Subject: Re: 128Mbyte memory Pentium Pro problem
To: Tim W. Janes <janes@signal.dra.hmg.gb>
From: Jason Thorpe <thorpej@nas.nasa.gov>
List: current-users
Date: 07/26/1996 08:06:18
On Fri, 26 Jul 1996 11:49:00 +0100 (BST)
"Tim W. Janes" <janes@signal.dra.hmg.gb> wrote:
> If I go up to 119*1024 Kbytes ( or any number above) the system will
> not boot - it ends up in the debugger.
> (setting EXTMEM_SIZE= 121856 boot message reports 125435904 bytes)
[ . . . ]
> Changing root device to wd0a
> panic: ptdi 24e023
Looks like you've found the "known bug" in the i386 pmap. Namely, the
kernel address space is fixed, and can't grow as necessary to support
large amounts of memory, extremely huge buffer caches, etc. Yes, this is
really lame :-)
Thankfully, there is a way to get around this... look in
i386/include/pmap.h for the NKPDE constant. Increase that number; double
it, or something. You have plenty of memory, so doubling it shouldn't
hurt :-)
The reason that's not been increased in the the source tree is because it
leads to pages being wasted in unused pmap overhead if you don't requre
the additional address space, such as a low memory machine. That's a
double-stinger - you have little memory, don't need the extra address
space, but the pmap would use up a bunch of memory so it could map pages
you don't have. Ick :-) The real solution, of course, is to fix the
pmap, but thusfar, noone has stepped up to do so.
Ciao.
-- save the ancient forests - http://www.bayarea.net/~thorpej/forest/ --
Jason R. Thorpe thorpej@nas.nasa.gov
NASA Ames Research Center Home: 408.866.1912
NAS: M/S 258-6 Work: 415.604.0935
Moffett Field, CA 94035 Pager: 415.428.6939