Propose for Several Dump types

Andrew Gallatin gallatin at cs.duke.edu
Wed Dec 22 06:08:16 PST 2004


Jun Su writes:
 > On Fri, 17 Dec 2004 11:21:39 -0500 (EST), Andrew Gallatin

 > > To me, it seems like the most obvious way to do this would be walking
 > > the kernel's vm maps.  But that does not work on 64-bit platforms which
 > > have a direct 1-1 physical/virtual address mapping.  So how do you
 > > quickly distinguish kernel memory from user memory in the dump
 > > routine?  I'm probably missing something simple..
 > My current draft idea is to traverse the vm_map structure. Then I can
 > find out the vm_object list. Then dump those memory regions. I don't
 > understand VM much. In this area, I need input from our VM guru...

Yes, we definately need the input of a VM guru..  

FWIW, its my understanding that UMA does these small allocations 
without an object.  Eg:

	m = vm_page_alloc(NULL, colour++, pflags | VM_ALLOC_NOOBJ);

So I'm not sure how you find them.  There must be some state
someplace, though.

Drew


More information about the freebsd-arch mailing list