[Bug 791337] New: Xen update turns Xen kernel ubootable
https://bugzilla.novell.com/show_bug.cgi?id=791337 https://bugzilla.novell.com/show_bug.cgi?id=791337#c0 Summary: Xen update turns Xen kernel ubootable Classification: openSUSE Product: openSUSE 12.2 Version: Final Platform: x86-64 OS/Version: openSUSE 12.2 Status: NEW Severity: Normal Priority: P5 - None Component: Xen AssignedTo: jdouglas@suse.com ReportedBy: novell-ugeuder@sneakemail.com QAContact: qa-bugs@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20100101 Firefox/16.0 Today I got xen update from xen-4.1.3_04-5.13.1.x86_64 to xen-4.1.3_01-5.6.2.x86_64 After the update the xen kernel no longer boots[1]. The error message is: error: file '/xen-4.13_01-5.6.2.gz' not found on grub level (grub is never left, which also means that I had to memorize the error message from the screen, so +/- bad memory correction...) It appeared to me that the error was caused by this line in /boot/grub2/grub.cfg: multiboot /xen-4.1.3_01-5.6.2.gz placeholder After running # grub2-mkconfig -o /boot/grub2/grub.cfg as advised in https://bugzilla.novell.com/show_bug.cgi?id=774666#c15 the problem disappears. I guess the xen package should have run grub2-mkconfig in its scriptlet. [1] Boot has to be read literally as Linux kernel boot here. There has been and still is an unrelated problem with intitrd and/or plymouth which prevents opening an encrypted root fs (at least) although the kernel boots fine. (https://bugzilla.novell.com/show_bug.cgi?id=775669) Reproducible: Always Steps to Reproduce: 1. Install today's xen patch Actual Results: Xen kernel does not boot (boot attempt fails inside grub because of reference to file, which no longer exists) Expected Results: Xen kernel should boot (and suffer from existing bug https://bugzilla.novell.com/show_bug.cgi?id=775669 until it gets fixed) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c
Uwe Geuder
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c1
Jan Beulich
It appeared to me that the error was caused by this line in /boot/grub2/grub.cfg:
multiboot /xen-4.1.3_01-5.6.2.gz placeholder
After running
# grub2-mkconfig -o /boot/grub2/grub.cfg
as advised in https://bugzilla.novell.com/show_bug.cgi?id=774666#c15
the problem disappears.
So how in the world is this a Xen issue then?
I guess the xen package should have run grub2-mkconfig in its scriptlet.
No - the Xen package should be agnostic to the specific boot loader in use. The mistake is that the full version string was included in the "multiboot" argument, but whoever put it there in this form failed to make sure it would get updated accordingly upon a package upgrade. The general rule ought to be to reference xen.gz here unless one has a reason to pick a specific version (in which case one likely wouldn't want that binary to be replaced and the version string to be updated). -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c2
--- Comment #2 from Olaf Hering
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c
Jiaying ren
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c3
--- Comment #3 from Uwe Geuder
No - the Xen package should be agnostic to the specific boot loader in use.
Sounds reasonable.
The mistake is that the full version string was included in the "multiboot" argument, but whoever put it there in this form failed to make sure it would
Well, it's not only the multiboot argument, but also the boot loaders menu
entries contain the version. Of course incorrect or generic menu entries would
not prevent the system from booting, but the correct explicit version displayed
there might be useful for the sysadmin. It has always been like that for the
kernel, why should it be less for the hypervisor?
The kernel does it like this:
if [ -f /etc/fstab -a ! -e /.buildenv ] ; then
# only run the bootloader if the usual bootloader configuration
# files are there -- this is different on every architecture
initrd=initrd-3.4.11-2.16-xen
if [ -e /boot/$initrd -o ! -e /lib/modules/3.4.11-2.16-xen ] && \
run_bootloader ; then
[ -e /boot/$initrd ] || initrd=
if [ -x /usr/lib/bootloader/bootloader_entry ]; then
/usr/lib/bootloader/bootloader_entry \
add \
xen \
3.4.11-2.16-xen \
vmlinuz-3.4.11-2.16-xen \
$initrd
else
message_install_bl
fi
fi
else
message_install_bl
fi
(from rpm -qp --scripts kernel-xen-3.4.11-2.16.1.x86_64.rpm)
That functionality is provided by package perl-Bootloader:
$ rpm -qi perl-Bootloader
Name : perl-Bootloader
Version : 0.6.7
Release : 1.1.1
Architecture: x86_64
Install Date: Wed 29 Aug 2012 07:08:58 PM EEST
Group : System/Boot
Size : 368071
License : GPL-2.0+
Signature : RSA/SHA256, Sun 15 Jul 2012 04:34:59 PM EEST, Key ID
b88b2fd43dbdc284
Source RPM : perl-Bootloader-0.6.7-1.1.1.src.rpm
Build Date : Sun 15 Jul 2012 04:34:39 PM EEST
Build Host : build30
Relocations : (not relocatable)
Packager : http://bugs.opensuse.org
Vendor : openSUSE
Summary : Library for Configuring Boot Loaders
Description :
Perl modules for configuring various boot loaders.
Authors:
--------
Jiri Srain
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c
Torsten Duwe
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c4
Torsten Duwe
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c5
--- Comment #5 from Anton Samsonov
Does this still happen with 13.1?
No, it doesn't, at least on my machine. The recent Xen update in 13.1 successfully triggered GRUB2 menu rebuilding, and the machine rebooted without any error. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c6
Jeffrey Cheung
https://bugzilla.novell.com/show_bug.cgi?id=791337
https://bugzilla.novell.com/show_bug.cgi?id=791337#c7
Jeffrey Cheung
participants (1)
-
bugzilla_noreply@novell.com