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

Reply via email to