Lucid kernel works on Rackspace cloud server, Maverick kernel does not

Bug #821466 reported by clayton
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Won't Fix
Undecided
Unassigned

Bug Description

I have a Rackspace cloud server which started its life as Lucid. Recently, Rackspace offered to turn over control of the kernel to users via pv-grub per http://www.rackspace.com/knowledge_center/linux_kernel_management

I basically carried out the instructions in the above link, upgrading my Lucid install to Maverick, but I have not been able to get the Maverick kernel to work. It looks to me like the Maverick kernel is lacking Xen support, since the /dev/xvda1 device is missing.

I now have the server upgraded from Lucid to Maverick, but still running under the Lucid kernel. Whenever I try to edit /boot/grub/menu.lst to replace the paths to the Lucid kernel and initrd with those for the Maverick kernel and initrd, the reboot fails as below.

This is my current working /boot/grub/menu.lst:

default=0
timeout=5
title=DISTRO-NAME "Ubuntu 2.6.32-33-server"
    root (hd0)
    kernel /boot/vmlinuz-2.6.32-33-server ro console=hvc0 root=/dev/xvda1
    initrd /boot/initrd.img-2.6.32-33-server

and what I have been doing is just changing the vmlinuz and initrd file names the the Maverick kernel values.

This is what I see in the console when the reboot fails, apparently because it could not find the root device:

[ 0.170442] device-mapper: uevent: version 1.0.3
[ 0.170588] device-mapper: ioctl: 4.17.0-ioctl (2010-03-05) initialised: <email address hidden>
[ 0.170828] device-mapper: multipath: version 1.1.1 loaded
[ 0.170836] device-mapper: multipath round-robin: version 1.0.0 loaded
[ 0.171301] cpuidle: using governor ladder
[ 0.171307] cpuidle: using governor menu
[ 0.171667] TCP cubic registered
[ 0.171807] NET: Registered protocol family 10
[ 0.172369] lo: Disabled Privacy Extensions
[ 0.173098] NET: Registered protocol family 17
[ 0.173169] powernow-k8: Found 1 Quad-Core AMD Opteron(tm) Processor 2374 HE (4 cpu cores) (version 2.20.00)
[ 0.173192] [Firmware Bug]: powernow-k8: No compatible ACPI _PSS objects found.
[ 0.173194] [Firmware Bug]: powernow-k8: Try again with latest BIOS.
[ 0.173327] registered taskstats version 1
[ 0.270062] XENBUS: Device with no driver: device/console/0
[ 0.270099] Magic number: 1:252:3141
[ 0.270156] /build/buildd/linux-2.6.35/drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 0.270166] BIOS EDD facility v0.16 2004-Jun-25, 0 devices found
[ 0.270172] EDD information not available.
[ 0.270385] Freeing unused kernel memory: 832k freed
[ 0.270750] Write protecting the kernel read-only data: 10240k
[ 0.274875] Freeing unused kernel memory: 296k freed
[ 0.275500] Freeing unused kernel memory: 1616k freed
Loading, please wait...
[ 0.322505] udev[98]: starting version 163
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Gave up waiting for root device. Common problems:
 - Boot args (cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
   - Check root= (did the system wait for the right device?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/xvda1 does not exist. Dropping to a shell!

BusyBox v1.15.3 (Ubuntu 1:1.15.3-1ubuntu5) built-in shell (ash)
Enter 'help' for a list of built-in commands.

(initramfs)

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: linux-image-2.6.35-30-virtual 2.6.35-30.54
Regression: Yes
Reproducible: Yes
ProcVersionSignature: Ubuntu 2.6.32-33.70-server 2.6.32.41+drm33.18
Uname: Linux 2.6.32-33-server x86_64
AlsaDevices: Error: command ['ls', '-l', '/dev/snd/'] failed with exit code 2: ls: cannot access /dev/snd/: No such file or directory
AplayDevices: Error: [Errno 2] No such file or directory
Architecture: amd64
ArecordDevices: Error: [Errno 2] No such file or directory
Date: Fri Aug 5 13:14:58 2011
Lspci: Error: [Errno 2] No such file or directory
Lsusb: Error: [Errno 2] No such file or directory
PciMultimedia:

ProcCmdLine: ro console=hvc0 root=/dev/xvda1
ProcEnviron:
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: linux
---
AlsaDevices: Error: command ['ls', '-l', '/dev/snd/'] failed with exit code 2: ls: cannot access /dev/snd/: No such file or directory
AplayDevices: Error: [Errno 2] No such file or directory
Architecture: amd64
ArecordDevices: Error: [Errno 2] No such file or directory
DistroRelease: Ubuntu 10.10
Lspci: Error: [Errno 2] No such file or directory
Lsusb: Error: [Errno 2] No such file or directory
Package: linux (not installed)
PciMultimedia:

ProcCmdLine: ro console=hvc0 root=/dev/xvda1
ProcEnviron:
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.32-33.70-server 2.6.32.41+drm33.18
Regression: Yes
Reproducible: Yes
Tags: maverick kernel-config regression-release needs-upstream-testing
Uname: Linux 2.6.32-33-server x86_64
UserGroups:

Revision history for this message
clayton (ckoeni) wrote :
Revision history for this message
Stefan Bader (smb) wrote :

Can you confirm that you are running a virtual kernel flavour? This is not immediately visible from the messages here. The difference would be that for -server the xen_blkfront driver is built as a module while -virtual got it built-in. So when booting a -virtual kernel, you will see no module loaded but /proc/devices should show xvd. Does cat /proc/partitions show anything?

Revision history for this message
clayton (ckoeni) wrote : Re: [Bug 821466] Re: Lucid kernel works on Rackspace cloud server, Maverick kernel does not

On Wed, 10 Aug 2011 22:09:20 -0000
Stefan Bader <email address hidden> wrote:

> Can you confirm that you are running a virtual kernel flavour? This is
> not immediately visible from the messages here. The difference would
> be that for -server the xen_blkfront driver is built as a module while
> -virtual got it built-in. So when booting a -virtual kernel, you will
> see no module loaded but /proc/devices should show xvd. Does cat
> /proc/partitions show anything?

Hi Stefan,

I only have virtual kernel packages installed, at least going by their
names:

# wajig list-installed | grep image
linux-image-2.6.32-33-virtual
linux-image-2.6.35-30-virtual
linux-image-virtual

When I presented this problem to Rackspace in a trouble ticket, missing
kernel modules was their hypothesis as well, and they suggested I try
to build my own kernel (something I have not done for quite some
time, and therefore something I have not gotten around to trying yet).

Using the (working) linux-image-2.6.32-33-virtual I get the following:
# cat /proc/partitions
major minor #blocks name
 202 1 9961472 xvda1
 202 2 524288 xvda2

I am betting, though, that you would like to see /proc/partitions for
the broken kernel. I will see if I can extract that out of the
Rackspace console later when I have a chance.

Thanks for your interest,
Clayton

> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/821466/+subscriptions

Revision history for this message
Stefan Bader (smb) wrote :

Hm, ok. I was asking because both the example of the grub config and the attached dmesg were showing a -server kernel for 2.6.32. And yes, both /proc/partitions and /proc/device would be interesting if possible in the broken case.
At least (not familiar with the interfaces rackspace provides) a full dump of dmesg for the broken startup would be useful.

Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 821466

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: lucid
Revision history for this message
clayton (ckoeni) wrote : BootDmesg.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
clayton (ckoeni) wrote : CurrentDmesg.txt

apport information

Revision history for this message
clayton (ckoeni) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
clayton (ckoeni) wrote : ProcInterrupts.txt

apport information

Revision history for this message
clayton (ckoeni) wrote : ProcModules.txt

apport information

Revision history for this message
clayton (ckoeni) wrote : UdevDb.txt

apport information

Revision history for this message
clayton (ckoeni) wrote : UdevLog.txt

apport information

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
clayton (ckoeni) wrote :

Stefan,

You asked for /proc/partitions and /proc/device after the broken boot. There is no /proc/device, but:

(initramfs) cat /proc/partitions
major minor #blocks name

 202 1 9961472 sda1
 202 2 524288 sda2

Revision history for this message
Stefan Bader (smb) wrote :

Ah, ok. So pretty sure this is the result of one patch we carried for EC2. This renames the block devices to sd* even in PV mode. This has been dropped in Natty and maybe can be dropped in Maverick, too. Though generally (since the device name has not been that stable in history), if you can avoid it, I would try to use fs-label or UUIDs instead. I have not verified with UUID but at least label works with pv-grub.

Revision history for this message
Stefan Bader (smb) wrote :

root=LABEL=myroot

Revision history for this message
clayton (ckoeni) wrote :

Yes, excellent call, and much thanks for your help. This now works:

# cat /etc/fstab
proc /proc proc defaults 0 0
LABEL=MYROOT / ext3 defaults,errors=remount-ro,noatime 0 1
UUID=b9f62618-9dff-4bb4-9f58-3c2c5a95625d none swap sw 0 0

# cat /boot/grub/menu.lst
default=0
timeout=5

title=DISTRO-NAME "Ubuntu 2.6.35-30-virtual"
    root (hd0)
    kernel /boot/vmlinuz-2.6.35-30-virtual ro console=hvc0 root=LABEL=MYROOT
    initrd /boot/initrd.img-2.6.35-30-virtual

# uname -a
Linux langex 2.6.35-30-virtual #56-Ubuntu SMP Mon Jul 11 23:14:32 UTC 2011 x86_64 GNU/Linux

I believe this bug report can be closed now.

Revision history for this message
Stefan Bader (smb) wrote :

Cool. Though I leave it open for a bit. Although Maverick may be oldish, maybe we want to get the behaviour in line with later releases (if only to make it simpler for people to convert). Not sure, but I'll update the report with whatever comes out of it.

Revision history for this message
Stefan Bader (smb) wrote :

Almost forgot about this one now. I think I brought this up on irc and the outcome was rather not to touch Maverick as long as there is the easy work-around of not using device names. So I just close this as won't fix.

Changed in linux (Ubuntu):
status: Confirmed → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.