tags 540572 patch
clone 540572 -1
reassign 540572 memtest86+
reassign -1 memtest86
thanks
Hi,
In the scripts supplied with memtest86+ and memtest86 for
/etc/grub.d, there are actually three distinct problems to be found:
1. They source the deprecated update-grub_lib instead of
grub-mkconfig_lib, which generates a warning when update-grub is run
(see #522345 and #523114).
2. They use the linux command, which fails to load memtest86+ and
memtest86; instead, the linux16 command is needed (see #539907).
3. They fail to work correctly when /boot is a separate partition
from /.
As the reporter mentions, for (1) and (2) there is a patch in
#539907 that addresses them. However, for memtest86+/memtest86 to work
correctly in his system, (3) must be addressed too. I'm attaching
patches for the /etc/grub.d files that fix all three problems (they
incorporate the fixes of the aforementioned patch and also fix the
additional problem).
Thanks,
Vasilis
--
Vasilis Vasaitis
"A man is well or woe as he thinks himself so."
--- debian/grub.orig 2009-08-11 00:04:27.000000000 +0100
+++ debian/grub 2009-08-11 00:08:45.000000000 +0100
@@ -1,16 +1,22 @@
#!/bin/sh
set -e
-. /usr/lib/grub/update-grub_lib
+. /usr/lib/grub/grub-mkconfig_lib
if test -e /boot/memtest86+.bin ; then
MEMTESTPATH=$( make_system_path_relative_to_its_root "/boot/memtest86+.bin" )
echo "Found memtest86+ image: $MEMTESTPATH" >&2
cat << EOF
menuentry "Memory test (memtest86+)" {
- linux $MEMTESTPATH
+EOF
+ prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/"
+ cat << EOF
+ linux16 $MEMTESTPATH
}
menuentry "Memory test (memtest86+, serial console 115200)" {
- linux $MEMTESTPATH console=ttyS0,115200n8
+EOF
+ prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/"
+ cat << EOF
+ linux16 $MEMTESTPATH console=ttyS0,115200n8
}
EOF
fi
--- debian/grub.orig 2009-08-11 00:04:14.000000000 +0100
+++ debian/grub 2009-08-11 00:08:36.000000000 +0100
@@ -1,13 +1,16 @@
#!/bin/sh
set -e
-. /usr/lib/grub/update-grub_lib
+. /usr/lib/grub/grub-mkconfig_lib
if test -e /boot/memtest86.bin ; then
MEMTESTPATH=$( make_system_path_relative_to_its_root "/boot/memtest86.bin" )
echo "Found memtest86 image: $MEMTESTPATH" >&2
cat << EOF
menuentry "Memory test (memtest86)" {
- linux $MEMTESTPATH
+EOF
+ prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/"
+ cat << EOF
+ linux16 $MEMTESTPATH
}
EOF
fi