Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Dec 2004 10:09:43 +0800
From:      Jun Su <csujun@gmail.com>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        delphij@freebsd.org
Subject:   Re: Propose for Several Dump types
Message-ID:  <cd4370cf041221180927295ed2@mail.gmail.com>
In-Reply-To: <16835.1939.301128.802993@grasshopper.cs.duke.edu>
References:  <cd4370cf04121323433255da9d@mail.gmail.com> <16835.1939.301128.802993@grasshopper.cs.duke.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 17 Dec 2004 11:21:39 -0500 (EST), Andrew Gallatin
<gallatin@cs.duke.edu> wrote:
> 
> Jun Su writes:
> 
> > Kernel-Only Dump
> > ==============
> > We now can use /dev/kmem as the core file. If we can generate a dump file with
> > the same information with it, then we can enable kernel-only dump with
> > very limit code changes.
> >
> > 1. Change KVM library to support a new type of file that only contains
> > kernel memory.
> > 2. Change kernel side to write only kernel memory when dumping.
> > 3. Change dumpon utility to do the right checking on the partiction size.
> 
> I think the kernel-only dump is an excellent idea.  But I'm confused
> as to how you would do it.
> 
> 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...

> 
> Thanks,
> 
> Drew
> 
> 
-- 
-- Jun Su



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?cd4370cf041221180927295ed2>