From 75709779df111dfc1af1af713c2fd7e14dfe6e1f Mon Sep 17 00:00:00 2001
From: Peter Jones <pjones@redhat.com>
Date: Mon, 28 Oct 2013 10:05:07 -0400
Subject: [PATCH] Use linux16 when appropriate (#880840)
The kernel group really would prefer that we use the 16 bit entry point
on x86 bios machines.
Resolves: rhbz#880840
Signed-off-by: Peter Jones <pjones@redhat.com>
---
util/grub.d/10_linux.in | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in
index 5ed7695..f34856a 100644
--- a/util/grub.d/10_linux.in
+++ b/util/grub.d/10_linux.in
@@ -80,6 +80,11 @@ linux_entry ()
type="$3"
args="$4"
+ sixteenbit=""
+ case "$machine" in
+ i?86|x86_64) sixteenbit="16" ;;
+ esac
+
if [ -z "$boot_device_id" ]; then
boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
fi
@@ -138,7 +143,7 @@ linux_entry ()
EOF
else
sed "s/^/$submenu_indentation/" << EOF
- linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}
+ linux${sixteenbit} ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}
EOF
fi
if test -n "${initrd}" ; then
@@ -148,7 +153,7 @@ EOF
EOF
else
sed "s/^/$submenu_indentation/" << EOF
- initrd ${rel_dirname}/${initrd}
+ initrd${sixteenbit} ${rel_dirname}/${initrd}
EOF
fi
fi
--
1.8.3.1