kernel memory checks on boot vs. boot time

John Baldwin jhb at
Wed Mar 23 11:54:52 UTC 2011

On Tuesday, March 22, 2011 6:45:54 pm Ed Maste wrote:
> On Tue, Mar 22, 2011 at 03:51:13PM -0400, John Baldwin wrote:
> > Do other platforms bother with these sorts of memory tests?  If not I'd vote 
> > to just drop it.  I think this mattered more when you didn't have things like 
> > SMAP (so you had to guess at where memory ended sometimes).  Also, modern 
> > server class x86 machines generally support ECC RAM which will trigger a 
> > machine check if there is a problem.  I doubt that the early checks are 
> > catching anything even for the non-ECC case.
> In the common case at work we want this off to reduce boot time.  The
> desire for a tunable though that can add extended memory tests is to be
> able to use the FreeBSD startup code as a replacement for memtest86+,
> for a couple of reasons:
> - FreeBSD's serial console output is more easily parsed by automated
>   tools
> - Memtest86+ appears to be limited to 64GB of RAM at the moment
> - Memtest86+ lacks support for the Tylersburg architecture last I looked

The existing memory check is nowhere near the level of what memtest86+
does and relying on that to give you the same testing strength as memtest86+
seems very dubious to me.  If you want a real memory tester, I'd be tempted
to just write a custom kernel for that, probably still using BIOS routines
for I/O similar to the boot loader, etc.  You'd also want to install a MC
handler before kicking off the test, but you would want to minimize the
amount of RAM you used so you could test as much of the RAM as possible.

John Baldwin

More information about the freebsd-arch mailing list