Bug 509448
Summary: | kernel-xen update via RHN doesn't retain xen kernel options in grub.conf | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 5 | Reporter: | Bryce Pier <bryce.pier> |
Component: | mkinitrd | Assignee: | Brian Lane <bcl> |
Status: | CLOSED WONTFIX | QA Contact: | Release Test Team <release-test-team-automation> |
Severity: | medium | Docs Contact: | |
Priority: | low | ||
Version: | 5.3 | CC: | clalance, ddumas, xen-maint |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2011-02-23 22:14:53 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Bryce Pier
2009-07-02 20:16:53 UTC
This doesn't appear to be operating incorrectly. Options are copied from the kernel specified as default, which in this case has means "ro root=/dev/lxvg/vol_root pci=bfsort console=xvc xencons=xvc" are the options that get copied. I think the complaint is about the "kernel" line for Xen, which is the hypervisor. Realize that booting Xen loads the Xen hypervisor which is specified on the "kernel" line, then the Xen version of the Linux kernel as specified on the first "module" line. Both the Xen hypervisor and the Xen kernel can have options. The current version copies both lines, but it can't copy something from an entry that doesn't include it. The entry it appears to be copying from in your example doesn't have any more options on that line. When I try it on an entry that does have options there, they are copied. Let's forget about the above example. Let's take the following example, which is becoming more common because of KVM and Xen. On my machine, I have both the kernel and the kernel-xen kernels installed, like so: default=1 timeout=10 serial --unit=1 --speed=115200 terminal --timeout=10 serial console title Red Hat Enterprise Linux Server (2.6.18-92.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-92.el5 com2=115200,8n1 console=com2L module /vmlinuz-2.6.18-92.el5xen ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS0,115200 module /initrd-2.6.18-92.el5xen.img title Red Hat Enterprise Linux Server (2.6.18-92.el5) root (hd0,0) kernel /vmlinuz-2.6.18-92.el5 ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS1,115200 initrd /initrd-2.6.18-92.el5.img (note that this is a perfectly valid configuration for a machine with serial on ttyS1) I'm booted into the 2.6.18-92.el5 (non-xen) kernel. I update to the RHEL-5.3 kernel, and now my grub.conf looks like: default=1 timeout=10 #splashimage=(hd0,0)/grub/splash.xpm.gz #hiddenmenu serial --unit=0 --speed=115200 terminal --timeout=10 serial console title Red Hat Enterprise Linux Server (2.6.18-128.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-128.el5 module /vmlinuz-2.6.18-128.el5xen ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS1,115200 module /initrd-2.6.18-128.el5xen.img title Red Hat Enterprise Linux Server (2.6.18-128.el5) root (hd0,0) kernel /vmlinuz-2.6.18-128.el5 ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS1,115200 initrd /initrd-2.6.18-128.el5.img title Red Hat Enterprise Linux Server (2.6.18-92.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-92.el5 com1=115200,8n1 module /vmlinuz-2.6.18-92.el5xen ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS0,115200 module /initrd-2.6.18-92.el5xen.img title Red Hat Enterprise Linux Server (2.6.18-92.el5) root (hd0,0) kernel /vmlinuz-2.6.18-92.el5 ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS1,115200 initrd /initrd-2.6.18-92.el5.img So what happened is that because my default kernel was the non-xen one, when I updated the xen one, it didn't carry over the hypervisor options. In point of fact, it also carried over the *wrong* kernel options; it should have carried over the console=ttyS0 instead of the console=ttyS1, but it didn't. This is probably the case for the reporter, and also what I've seen. Looked at from that point of view, it's not a regression; it's something that's always been there. That being said, from the principle of least surprise, the right thing to do here is probably to copy the options from the newest xen hypervisor and kernel (if it exists) to the xen hypervisor kernel that is currently being installed. While you still may get it wrong, I would say that you have a much better chance of getting it right than we currently have. Chris Lalancette Development Management has reviewed and declined this request. You may appeal this decision by reopening this request. |