[GTALUG] war story: memtest86+ vs. UEFI

D. Hugh Redelmeier hugh at mimosa.com
Mon Mar 30 17:24:54 UTC 2015


Summary: it seems that memtest86+ won't run under UEFI.  You need to
switch to "legacy" boot and use an appropriate CD/DVD/USB stick to
supply memtest86+.

I often run memtest86+ when I get new RAM.  This increases my confidence 
that the RAM isn't busted and is compatible with the machine it is 
installed in.  Running it overnight seems long enough without interfering 
with my use and enjoyment of the computer.

I even run it on a brand-new machine as one of the confidence building 
measures.

Well, that's what I used to do.  I've not taken the time to do it 
recently.  But I wanted to run it last night because I bought some 
(mislabelled!) RAM at the NCIX warehouse sale on Saturday.

Ubuntu lets you install memtest86+ as a package (it may be a default
package, I don't know).  But you cannot run it under Ubuntu, you have
to boot into it.  When you install the package, it adds a grub entry
to let you boot into memtest86+ instead of Ubuntu.  Yet on my machine
there was no such entry.  Reading the script that generates the entry,
I found that memtest86+ must be booted in 16-bit mode, i.e.
old-fashioned BIOS, and not UEFI.  So the script doesn't bother to
generate the entry on a UEFI system (silently).

To run memtest86+, you have to switch the system firmware to use
"legacy" booting (old-fashioned BIOS/MBR).  On my machine, you cannot
enable both MBR and UEFI booting: you need to choose one.

Once I switched to legacy booting, I could no longer use the Ubuntu on
my hard drive since it was set up for UEFI.  I used a Ubuntu
installation DVD -- it has an early option for running memtest86+.

It turns out that Fedora 21's live/install image has a newer
memtest86+ than Ubuntu 14.04: 5.01 vs 4.20.  The newer one lists the
DIMMs or SODIMMs present on the system.


More information about the talk mailing list