Help on deciphering crash

Dave Martindale dave at onfcanim.UUCP
Tue Jan 6 01:50:06 AEST 1987


In article <1419 at cit-vax.Caltech.Edu> mangler at cit-vax.Caltech.Edu (System Mangler) writes:
>We get these all the time.  There are two ways to "fix" it:  swap
>L0003 boards until you get a good one ($$$), or change the machine
>check handler to flush the cache and return.  Now, can anyone tell
>me how to flush the cache?

At Waterloo, someone added code to set the "force cache miss" bits,
then access the address that got the parity fault; the idea being that
this might cause the bad cache entry to be cleared.  Without any way
to generate cache errors on demand it's hard to check whether the code
really works as designed.  However, it's been running on perhaps a
dozen machines for a year or two, so it is at least benign.
The code looks like this; it's for a 780 so the magic bits may be
somewhere else on a 750:


			/* Force Cache Miss and Replace */
			mtpr(SBIMT, mfpr(SBIMT) | 0x1e000);
			i = *(int *)mcf->mc8_vaviba;	/* Access address */

			/* Return to normal */
			mtpr(SBIMT, mfpr(SBIMT) & ~0x1e000);



More information about the Comp.unix.questions mailing list