Subject: Re: memory errors
To: None <mcr@gateway.sandelman.ocunix.on.ca>
From: Gordon W. Ross <gwr@mc.com>
List: port-sun3
Date: 03/14/1996 15:07:53
> Date: Tue, 12 Mar 1996 03:29:32 -0500
> From: Michael Richardson <mcr@gateway.sandelman.ocunix.on.ca>
> Sender: owner-port-sun3@netbsd.org
> Precedence: list
> X-Loop: port-sun3@NetBSD.ORG
> 
> 
>   Well, I didn't do much to my box over Feb, IETF and ISOC and a whole
> bunch of real work to do.
>   It ran fine.  
>   Now I'm up compiling sup to suck the latest kernel, and what do I
> get?
> 
>   Another memory error. 
>   I've rotated all my SIMMs. This should cause the error, if it is
> memory related to *move*
> 
>   I get: 
> 
> MEMORY ERROR!  Status D2, DVMA-BIT 0, Context 7,
>   Vaddr: 1A000, Paddr: 00238000, Type 0 at 0x0E08F2CC.
>   >
> 
>   If I 'machine halt' things. Always 00238000.  D2 status. Everything
> else changes.
> 
>   Now where was that interpretation of the status bits again???

Status D2 is: a parity error in bits 8..15 for what that's worth.

/*
 *  Bits for the memory error register when used as parity error register
 */
#define PER_INTR	0x80	/* r/o - 1 = parity interrupt pending */
#define PER_INTENA	0x40	/* r/w - 1 = enable interrupt on parity error */
#define PER_TEST	0x20	/* r/w - 1 = write inverse parity */
#define PER_CHECK	0x10	/* r/w - 1 = enable parity checking */
#define PER_ERR24	0x08	/* r/o - 1 = parity error <24..31> */
#define PER_ERR16	0x04	/* r/o - 1 = parity error <16..23> */
#define PER_ERR08	0x02	/* r/o - 1 = parity error <8..15> */
#define PER_ERR00	0x01	/* r/o - 1 = parity error <0..7> */
#define	PER_ERR		0x0F	/* r/o - mask for some parity error occuring */
#define PARERR_BITS	"\20\10INTR\7INTENA\6TEST\5CHECK\4ERR24\3ERR16\2ERR08\1ERR00"