Bug 1303804

Summary: memtest86+-5.01-{10,11} doesn't work
Product: [Fedora] Fedora Reporter: Andre Robatino <robatino>
Component: memtest86+Assignee: Jaroslav Škarvada <jskarvad>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 23CC: jskarvad, stanley.king
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: memtest86+-5.01-14.fc23 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-02-28 12:22:56 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
dmesg for Dell Dimension B110 none

Description Andre Robatino 2016-02-02 02:58:24 UTC
Description of problem:
After updating to memtest86+-5.01-11.fc23.i686 on a 32-bit machine, it no longer works. After selecting it from the GRUB menu, I just see the line

Loading Fedora Memtest ...Loading memtest86+-5.01  ...

and the machine is hung. I have to hard power off. The release version (memtest86+-5.01-8.fc22.i686) worked. I tried uninstalling memtest86+, then reinstalling, and running memtest-setup and "grub2-mkconfig -o /boot/grub2/grub.cfg" with no change.

Version-Release number of selected component (if applicable):
memtest86+-5.01-11.fc23.i686

How reproducible:
always

Additional info:
The 64-bit version works fine on my two 64-bit machines.

Comment 1 Jaroslav Škarvada 2016-02-04 14:07:38 UTC
I am unable to reproduce the problem, it works on all of my i686 test machines without problem.

Could you find out which version introduced the problem for you? 5.01-10 or 5.01-11?

Comment 2 Andre Robatino 2016-02-04 17:52:46 UTC
Where can I find 5.01-10? It's not in koji.

Comment 3 Andre Robatino 2016-02-04 21:35:51 UTC
The machine is a Dell Dimension B110 I bought in 2006, with a 32-bit Celeron D CPU. I'm planning to test Fedora-Live-Workstation-i686-rawhide-20160204.iso as soon as I finish downloading, both in a VM, and if that works, after burned to media.

Comment 4 Andre Robatino 2016-02-04 22:52:47 UTC
Fedora-Live-Workstation-i686-rawhide-20160204.iso memtest86+ works, both in a VirtualBox VM on a 64-bit host, and when burned to media, run on the same 32-bit machine where the F23 version fails when run from the grub menu.

Comment 5 Jaroslav Škarvada 2016-02-05 10:10:21 UTC
(In reply to Andre Robatino from comment #2)
> Where can I find 5.01-10? It's not in koji.

Interesting, it seems it is not in the build system. I built scratch build for testing:

http://koji.fedoraproject.org/koji/taskinfo?taskID=12890206

Comment 6 Jaroslav Škarvada 2016-02-05 10:13:57 UTC
(In reply to Andre Robatino from comment #4)
> Fedora-Live-Workstation-i686-rawhide-20160204.iso memtest86+ works, both in
> a VirtualBox VM on a 64-bit host, and when burned to media, run on the same
> 32-bit machine where the F23 version fails when run from the grub menu.

This is even more interesting, IIRC the only difference between rawhide and f23 memtest86+ versions are different version of compiler used.

Comment 7 Andre Robatino 2016-02-05 10:20:48 UTC
(In reply to Jaroslav Škarvada from comment #5)
> (In reply to Andre Robatino from comment #2)
> > Where can I find 5.01-10? It's not in koji.
> 
> Interesting, it seems it is not in the build system. I built scratch build
> for testing:
> 
> http://koji.fedoraproject.org/koji/taskinfo?taskID=12890206

Just tested, this fails the same way as 5.01-11.

Comment 8 Andre Robatino 2016-02-05 10:22:58 UTC
(In reply to Jaroslav Škarvada from comment #6)
> (In reply to Andre Robatino from comment #4)
> > Fedora-Live-Workstation-i686-rawhide-20160204.iso memtest86+ works, both in
> > a VirtualBox VM on a 64-bit host, and when burned to media, run on the same
> > 32-bit machine where the F23 version fails when run from the grub menu.
> 
> This is even more interesting, IIRC the only difference between rawhide and
> f23 memtest86+ versions are different version of compiler used.

Does it matter whether you run memtest86+ from the live image's troubleshooting menu, versus running it from the grub menu on an installed system with memtest86+ installed?

Comment 9 Jaroslav Škarvada 2016-02-05 10:26:08 UTC
(In reply to Andre Robatino from comment #8)
> Does it matter whether you run memtest86+ from the live image's
> troubleshooting menu, versus running it from the grub menu on an installed
> system with memtest86+ installed?

I think yes, it is different loader, IIRC isolinux vs grub-2.

Comment 10 Andre Robatino 2016-02-05 10:38:03 UTC
(In reply to Jaroslav Škarvada from comment #9)
> (In reply to Andre Robatino from comment #8)
> > Does it matter whether you run memtest86+ from the live image's
> > troubleshooting menu, versus running it from the grub menu on an installed
> > system with memtest86+ installed?
> 
> I think yes, it is different loader, IIRC isolinux vs grub-2.

OK, I want to keep F23 installed on this machine (until F24 goes Gold), so the only way for me to test the F23 memtest version is running it from the grub menu (unless there's a F23 live image available which includes the new memtest) and the only way for me to test the Rawhide version is running it from the live troubleshooting menu (since I don't want to install Rawhide on it).

Comment 11 Jaroslav Škarvada 2016-02-05 15:59:12 UTC
memtest86+-5.01-10 - fixed relocation routine which has been used for long in older memtests, but was broken since rebase to version 5 release. The relocation is required by some bootloaders, because they cannot load ELF image bellow 1MB (e.g. grub-legacy), relocated the code to address used in memtest86+-4.20.

memtest86+-5.01-11 - Relocated the code to the address introduced in 5 release, because the old address introduced problems with some firmwares when booted binary image from floppy/USB.

Unfortunately I haven't found Dell Dimension B110 in our pool, nor any machine to reproduce the problem on, so I don't know what's going there.

Comment 12 Andre Robatino 2016-02-05 17:53:53 UTC
Created attachment 1121462 [details]
dmesg for Dell Dimension B110

I'll be happy to provide any logfiles or hardware info I can. For example, here is dmesg output. There is some basic info regarding memory layout early in the file.

Comment 13 Jaroslav Škarvada 2016-02-06 15:03:36 UTC
Unfortunately such issues are hard to debug and mostly requires physical access to the machine. Does the binary image works for you (instead of the ELF?). To check it just change in your grub.cfg:

knetbsd /elf-memtest86+-5.01

to

linux16 /memtest86+-5.01

Comment 14 Andre Robatino 2016-02-06 20:21:03 UTC
(In reply to Jaroslav Škarvada from comment #13)
> Unfortunately such issues are hard to debug and mostly requires physical
> access to the machine. Does the binary image works for you (instead of the
> ELF?). To check it just change in your grub.cfg:
> 
> knetbsd /elf-memtest86+-5.01
> 
> to
> 
> linux16 /memtest86+-5.01

After making the change, it still fails, but the displayed message is now

Loading Fedora Memtest ...Loading memtest86+-5.01  ...
error: invalid magic number.

Press any key to continue...

(This is with 5.01-11. I updated back to -11 after testing -10.)

Comment 15 Andre Robatino 2016-02-06 20:27:48 UTC
Testing 5.01-10 with the same grub.cfg change, the result is exactly the same.

Comment 16 Andre Robatino 2016-02-07 01:13:25 UTC
Sorry, just realized I made the wrong change (instead of "linux16 /memtest86+-5.01", I had "linux16 /elf-memtest86+-5.01"). Now that I have fixed it, memtest86+-5.01-11 works properly. But with -10, I get the original message

Loading Fedora Memtest ...Loading memtest86+-5.01  ...

and after 10 seconds, it reboots by itself to the grub menu. I don't believe that happened before, it was just hung.

Comment 17 Jaroslav Škarvada 2016-02-08 09:42:43 UTC
(In reply to Andre Robatino from comment #16)
> Sorry, just realized I made the wrong change (instead of "linux16
> /memtest86+-5.01", I had "linux16 /elf-memtest86+-5.01"). Now that I have
> fixed it, memtest86+-5.01-11 works properly. But with -10, I get the
> original message
> 
> Loading Fedora Memtest ...Loading memtest86+-5.01  ...
> 
> and after 10 seconds, it reboots by itself to the grub menu. I don't believe
> that happened before, it was just hung.

Thanks for info. I will probably update the memtest-setup script to have an option which version to install.

Comment 18 Andre Robatino 2016-02-21 21:26:31 UTC
Another person had this problem, but on a 64-bit machine. See https://lists.fedoraproject.org/pipermail/users/2016-February/468857.html . So I don't know what the trigger is.

Comment 19 Stan King 2016-02-21 22:16:40 UTC
Hello, everyone.  For me, the new memtest86+ (memtest86+-5.01-11.fc23.x86_64) works on my Core2 Duo machines, but not on my Core i5 machines (first and second generation).  Let me know if you'd like more details.

Comment 20 Andre Robatino 2016-02-21 22:26:04 UTC
OK, so the trigger definitely isn't old hardware. (BTW, one of my 64-bit machines that work is a Core 2 Duo as well.) I also checked that the F23 release version, which worked for me (memtest86+-5.01-8.fc22) used knetbsd instead of linux16, and that version worked on all my machines. So it's not just using knetbsd either.

Comment 21 Jaroslav Škarvada 2016-02-23 16:27:50 UTC
Added option and configuration file and updated the doc:

Install ELF version:
# memtest-setup
# grub2-mkconfig -o /boot/grub2/grub.cfg

Install non-ELF version:
# memtest-setup -b
# grub2-mkconfig -o /boot/grub2/grub.cfg

It would be great to go with only one variant of the image sometimes in the future, but it is not yet ready.

Regarding machines failing with the ELF image, I have no idea - both images do reloc - this looks like black magic :)

Grub2 don't requires reloc and AFAIK it is the only non-UEFI bootloader in Fedora (not counting syslinux), so I dropped the reloc in rawhide and let's see.

Comment 22 Fedora Update System 2016-02-24 14:48:11 UTC
memtest86+-5.01-14.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-5a0ae108e4

Comment 23 Fedora Update System 2016-02-26 02:25:06 UTC
memtest86+-5.01-14.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-5a0ae108e4

Comment 24 Andre Robatino 2016-02-26 18:32:56 UTC
The default ELF version of memtest86+-5.01-14.fc23 works on the same machine where it failed with -10 and -11.

Comment 25 Fedora Update System 2016-02-28 12:22:54 UTC
memtest86+-5.01-14.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Comment 26 Andre Robatino 2016-02-29 01:08:05 UTC
I think the resolution is supposed to be CURRENTRELEASE since this was reported for and fixed in F23.

CURRENTRELEASE 	The problem described has been fixed in the current supported release.

ERRATA 	The problem described has been fixed and is available as an update from our support web site.

Comment 27 Andre Robatino 2016-02-29 01:09:10 UTC
Oh, I see it was set automatically. Still not sure if that's correct.

Comment 28 Jaroslav Škarvada 2016-02-29 08:37:29 UTC
(In reply to Andre Robatino from comment #26)
> I think the resolution is supposed to be CURRENTRELEASE since this was
> reported for and fixed in F23.
> 
> CURRENTRELEASE 	The problem described has been fixed in the current
> supported release.
> 
> ERRATA 	The problem described has been fixed and is available as an update
> from our support web site.

Sorry, I think you are wrong, it was resolved by and an errata (tracked update in updates), thus I think it should be closed as ERRATA (as it automatically was by the infrastructure).