forked from pool/grub2
2764c99fe0
I think it is good time to update to 2.02 so it can get more testing. Although internal changes are pretty extensive, externally it should be pretty much the same. The main user visible changes are - autogen is not used anymore, so we can finally simplify patches and recreate files during RPM build. So generated files need not be patched and shipped any more. - GRUB_HIDDEN_TIMEOUT is deprecated, we should use GRUB_TIMEOUT_STYLE instead. This will need perl-Bootloader and YaST changes. Old config is still accpepted so nothing should be broken. - native pvgrub2 support for Xen PV guests. - ARM support (32 and 64 bit), although it has rough edges. OBS-URL: https://build.opensuse.org/request/show/212604 OBS-URL: https://build.opensuse.org/package/show/Base:System/grub2?expand=0&rev=62
44 lines
1.8 KiB
Diff
44 lines
1.8 KiB
Diff
From 86fdefd6b0d447cd7d3d80f794fcd4df2aa96792 Mon Sep 17 00:00:00 2001
|
|
From: Michael Chang <mchang@suse.com>
|
|
Date: Thu, 30 Aug 2012 15:27:50 +0800
|
|
Subject: [PATCH] fix Grub2 with SUSE Xen package install
|
|
|
|
References: bnc#774666
|
|
Patch-Mainline: no
|
|
|
|
This fixes Grub2 does not offer a Xen entry after installing hypervisor
|
|
and tools, which is caused by install sequence of xen-kernel and xen is
|
|
unpredictable.
|
|
|
|
By judging the system is dom0 with xen kernel installed, the xen_list
|
|
will be set to /boot/xen.gz if it's empty. Because the xen kernel would
|
|
trigger the config updated prior to the xen package installation.
|
|
---
|
|
util/grub.d/20_linux_xen.in | 13 +++++++++++++
|
|
1 files changed, 13 insertions(+), 0 deletions(-)
|
|
|
|
Index: grub-2.02~beta2/util/grub.d/20_linux_xen.in
|
|
===================================================================
|
|
--- grub-2.02~beta2.orig/util/grub.d/20_linux_xen.in
|
|
+++ grub-2.02~beta2/util/grub.d/20_linux_xen.in
|
|
@@ -170,6 +170,19 @@ file_is_not_sym () {
|
|
xen_list=`for i in /boot/xen*.gz; do
|
|
if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" && test ! -L "$i" ; then echo -n "$i " ; fi
|
|
done`
|
|
+
|
|
+# bnc#774666 - Grub2 does not offer a Xen entry after installing hypervisor and tools
|
|
+# This is a workaround to the install sequence of xen-kernel and xen is unpredictable
|
|
+if [ "x${xen_list}" = "x" ] &&
|
|
+# If the code reaches here, it means that xen-kernel has been installed, but xen hypervisor
|
|
+# is missing. This is not likely a sane condition for dom0. We assume this is xen-kernel
|
|
+# triggers config update prior to the xen package.
|
|
+# Test the system is dom0, if it is, we set the xen_list to /boot/xen.gz which should become
|
|
+# available after xen package installed.
|
|
+ [ -e /proc/xen/xsd_port -o ! -e /proc/xen ]; then
|
|
+ xen_list="/boot/xen.gz"
|
|
+fi
|
|
+
|
|
prepare_boot_cache=
|
|
boot_device_id=
|
|
|