Subject: Physical memory tests?
To: None <port-i386@NetBSD.ORG>
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
List: port-i386
Date: 08/02/1996 17:55:27
Is there a NetBSD/i386 memory-tester that can run at boot?  If so, how
can I enable it?  I want to do this on machines that're installed as
routers.  Booting into DOS to do a check isn't really an option; the
machines are in wiring closets.

I just had a really painful time, installing what seems to be a SIMM
with a transient error in a Pentium.  The memory passes the BIOS tests
fine.  Running multi-user,, there're all sorts of
otherwise-inexplicable coredumps, and occasional corruption of the
kernel's free list.


I skimmed the arch/i386/i386 code and couldn't find such a thing
nywhere. 

Is it possible to add a memory tester -- say, write large chunks
(bigger than the cache size) of each of 0x0000000, 0xfffffff,
0xa5a5a5a5, 0x5a5a5a5a, and then read them back between write passes?


(Obviously, the earlier this is done, the less memory the kernel is
using and the more that can be tested.)

I'm  used to workstations with SECDED ECC memory subsystems.  Given
the apaprent lack of such hardware  on x86 subsystems, I'd like at
least the _option_ of a memory-test at boot.  I don't much care if
it refuses to boot or continues with warnings, I'd just like to _know_
if there are potential memory problems.   Couldn't this happen with
marginal-speed memory as well as bad memory?

thanks in advance for any suggestions,
--Jonathan