dcavalca / rpms / grub2

Forked from rpms/grub2 3 years ago
Clone
Blob Blame History Raw
From fbcb0b99d3a4ee0c1d38c965b0dc7cda22d04f28 Mon Sep 17 00:00:00 2001
From: Peter Jones <pjones@redhat.com>
Date: Mon, 28 Oct 2013 10:05:07 -0400
Subject: [PATCH 28/34] 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 e762e1f..600bfd2 100644
--- a/util/grub.d/10_linux.in
+++ b/util/grub.d/10_linux.in
@@ -74,6 +74,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
@@ -132,7 +137,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
@@ -142,7 +147,7 @@ EOF
 EOF
     else
       sed "s/^/$submenu_indentation/" << EOF
-	initrd	${rel_dirname}/${initrd}
+	initrd${sixteenbit} ${rel_dirname}/${initrd}
 EOF
     fi
   fi
-- 
1.8.4.2