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_at_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 BaldwinReceived on Mon Aug 20 2012 - 16:21:34 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:29 UTC