What is the deal with memtest86+-7.00-1 RPM in the distro?

To be specific, memtest86±7.00-1.fc39.x86_64. The only files that it contains are

/usr/lib64/memtest86+/memtest86+.kernel-install-plugin
/usr/lib64/memtest86+/memtest86+x64.bin
/usr/lib64/memtest86+/memtest86+x64.efi
/usr/share/doc/memtest86+
/usr/share/doc/memtest86+/README.md
/usr/share/licenses/memtest86+
/usr/share/licenses/memtest86+/LICENSE
/usr/share/memtest86+/memtest86+x64.iso

None of these are sufficient to actually install memtest86+ as a bootable option in GRUB. The README file is a straight up copy of the one in the Github repo.

I have a Windows 11 / Fedora dualboot system. when I ran memtest86+.kernel-install-plugin it trashed the GRUB entries for Windows, added a menu entry for memtest86+, but that GRUB entry was not bootable, some message about a missing shim quickly appeared and disappeared. (I was able to get the Windows boot entries back by running grub2-mkconfig.)

I guess I could open a bug to request to have this fixed. It would be nice to make it secure boot compatible.

I’m also looking for any recent and comprehensible document that gives an explanation of where to install the memtest86+ EFI and BIN files in such a way that grub2-mkconfig can find them. Once I can make memtest86+ a bootable option, making it secure boot compatible with a self-signed key should be trivial.

The install script will create the file /boot/loader/entries/b4146134cc534b2bb35b75e467b91eb4-0-memtest86+.conf with the contents of ( replacing b4146134cc534b2bb35b75e467b91eb4 with your machine-id)

title Memory test (memtest86+x64.efi)
version 0-7.00-memtest86+
linux /boot/memtest86+x64.efi
grub_users $grub_users
grub_arg --unrestricted
grub_class memtest

and copy the /usr/lib64/memtest86+/memtest86+x64.efi file to the boot directory same way as the kernel images are installed.

The only problem is that memtest86+x64.efi hasn’t been signed so you either sign it your self or run with secure boot disabled.

2 Likes

Thanks, works exactly as you described.

With secure boot on, grub complains about an unsigned shim file, but I think it really means memtest86+x64.efi.