Blob Blame History Raw
From d23b0a97c175f6f356eaeff02d0d3cb61b0272df 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 3c290f65403..c8376a5189c 100644
--- a/util/grub.d/10_linux.in
+++ b/util/grub.d/10_linux.in
@@ -86,6 +86,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
@@ -142,8 +147,8 @@ linux_entry ()
     linuxcmd=linuxefi
     initrdcmd=initrdefi
   else
-    linuxcmd=linux
-    initrdcmd=initrd
+    linuxcmd=linux${sixteenbit}
+    initrdcmd=initrd${sixteenbit}
   fi
   sed "s/^/$submenu_indentation/" << EOF
 	${linuxcmd}	${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}