Subject: NetBSD-1.6.1 pmap_bootstrap() bug
To: None <port-powerpc@netbsd.org>
From: Tad Hunt <tad@entrisphere.com>
List: port-powerpc
Date: 09/18/2003 18:39:09
There is a bunch of code in pmap_bootstrap() which attempts to
factor out the RAM in use by the kernel.  It doesn't seem to work.
If I pass it in the kernel start address and end address, and
the mem_regions returned by the mem_regions() call contain the
kernel, it doesn't get factored out.  The full size of the RAM
gets put into the physmem global.

If I factor out the kernel from the available memory regions, then
it works fine.  The comment in sys/arch/powerpc/powerpc/ofw_machdep.c
implies that it is OK to provide regions which contain the kernel.

I assume the pmap_bootstrap() is supposed to do the right thing,
but it just doesn't work quite right...

Anyway, it's easy to subtract the kernel out of the available region
anyway.

-Tad