Re: kernel page fult for a valid pointer?
On Monday, August 20, 2012 9:49:48 am Monthadar Al Jaberi wrote:
> On Mon, Aug 20, 2012 at 2:04 PM, John Baldwin <jhb@freebsd.org> wrote:
> > On Saturday, August 18, 2012 2:29:26 pm Monthadar Al Jaberi wrote:
> >> Hi,
> >>
> >> I am wondering is there a reason for getting "Fatal trap 12: page
> >> fault while in kernel mode" "supervisor read, page not present" for an
> >> address used to be valid in kernel space?
> >>
> >> I dont really understand why I am getting this, I added a hardware
> >> watchpoint on the address, and when I got to the debuger I could read
> >> the memory content and dump for that address. But when I continue from
> >> the debugger I get the panic and now when I try to read the memory
> >> content I get *** error reading from address ce733000 ***.
> >
> > Whatever memory was there might have been unmapped? For example,
> > memory pointed to by I/O buffers (struct buf/bio) use transient
> > mappings that are only valid while an I/O request is in progress.
>
> Thank you the for the reply, so if a struct gets freed will the page
> it was on get un-mapped, so that I cant dump it in debugger? Even
> VirtualBox debugger cant dump the memory giving
> "VERR_PAGE_TABLE_NOT_PRESENT: Reading memory at...".
>
> In my case it is a struct ieee80211_node which gets freed, but where
> does the page get unmaped? I tried doubling the memory in VirtualBox.
Well, things that are malloc'd are a bit trickier. I do believe they can
get unmapped if the backing slab is released to the system during a
uma_reclaim().
--
John Baldwin
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
討論串 (同標題文章)
完整討論串 (本文為第 4 之 4 篇):