Subject: Re: panic: ptdi %x
To: None <chuck@ccrc.wustl.edu>
From: Chris G. Demetriou <cgd@netbsd.org>
List: port-i386
Date: 11/04/1998 08:23:40
chuck@ccrc.wustl.edu writes:
> >>It's due to a design flaw in the old pmap.  It's fixed in the new
> >>pmap for UVM.
> 
> >So I take it there's no "easy fix" or workaround that could be
> >incorporated into the 1.3 branch?
> 
> well...
> 
> the problem you are likely running into is that in BSD VM the number 
> of page tables allocated for the kernel's address space is statically
> determined at boot time.   your 'dd' command is using all the space
> these page tables make available -- thus you get a 'ptdi' panic.
> [in UVM the number of kernel page tables can be dynamically grown
> through the pmap_growkernel() interface that I got from FreeBSD VM.]

Uh, this is typically _not_ the problem since my NKPDE patches went in
long ago.

The problem is what Bob Baron mentioned in a later message:
the intermediate page tables aren't properly populated (or something
like that).  This can also be seen when using 'gdb' on large
executables.

The ARM port had a similar problem, but hacked around it on the GDB
side with a gross back to make sure the page table was mapped
properly...

> so if you've got memory to burn: define NKPDE to be 63.  i think you
> can even patch a precompiled kernel with gdb by setting 'nkpde' to 63.
> again, this is clearly a hack, but it should work.

Certainly, it wouldn't hurt to try this, but I wouldn't be so quick to
expect it to  work...


cgd
-- 
Chris Demetriou - cgd@netbsd.org - http://www.netbsd.org/People/Pages/cgd.html
Disclaimer: Not speaking for NetBSD, just expressing my own opinion.