Subject: Re: Argh! panic on cvs checkout
To: Ignatios Souvatzis <is@netbsd.org>
From: Richard Earnshaw <rearnsha@arm.com>
List: port-arm32
Date: 05/24/2001 13:26:44
> On Thu, May 24, 2001 at 11:22:51AM +0100, Richard Earnshaw wrote:
> > No, because by the time the fault happens you no-longer know where the 
> > faulty instruction is.
> > 
> > Remember the problem occurs when
> > 
> > 1) The last instruction in the page is ldr or ldm that writes the PC
> > 2) The next page is not mapped
> 
> Evil idea: "always map the next page when the last longword is a ldr or ldm
> that writes the PC."

We've been round all this before...

Not trivial, since you must also prevent the following page from being 
unmapped when it hasn't been touched.  Grubbing around like this would IMO 
seriously impact the pmap performance, and probably never be completely 
reliable either.

Add to this the case of the unfortunate looser where every page ends in 
such an instruction and his application is larger than physical memory 
and....

> 
> Of course, an option.
> Wasn't somebody rewriting the pmap?

There's another option of course -- upgrade your strongarm.  Buggy chips 
are only in RPCs and these all have the chip on a small daughter card.

R.