Subject: Re: port-i386/1909: NKPDE fix.
To: None <Chris_G_Demetriou@NIAGARA.NECTAR.CS.CMU.EDU>
From: John Dyson <firstname.lastname@example.org>
Date: 01/07/1996 20:36:18
> This has the unfortunate side effect that it wastes something like
> 19 * 4K of wired memory... 76K is a lot of wired memory to throw away
> on a 4M machine.
> a better way to do it would be to make kernel page table space
> dynamically allocated... but that's harder. 8-)
FreeBSD allocates virtual space for 256MB of kernel, but starts with only 9
kernel page table pages. It grows dynamically as needed, up to 63 kernel page
table pages. Of course it is done in a machine independent fashion in
the upper layers (and calls an optional pmap routine for low level support.)
Architectures that don't need that support don't need to do anything in
the special pmap routine. We have had that support for 1yr now. There
were two reasons for the support -- one eliminating another error prone
tunable, and secondly at one time I was going to fault I/O into the
kernel space (more kva needed) -- but that was very inefficient, so decided
not to do it.