[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-users] xen.org dom0 kernel w/RHEL 5 PV on HVM guests

  • To: xen-users@xxxxxxxxxxxxxxxxxxx
  • From: Andrew Evans <andrewe@xxxxxxxxxxxxx>
  • Date: Thu, 18 Mar 2010 12:46:11 -0700
  • Delivery-date: Thu, 18 Mar 2010 12:50:01 -0700
  • Domainkey-signature: a=rsa-sha1; s=serpent; d=yahoo-inc.com; c=nofws; q=dns; h=message-id:date:from:user-agent:mime-version:to:subject:content-type; b=PXMTmwKnZ4yT8NsZMyCEEkFsoio1rpAmNsiUaxW2No6TXrd+6XX42PHbEvGcdr7i
  • List-id: Xen user discussion <xen-users.lists.xensource.com>

I've been beating my head against the wall trying to get stub domains
working with PV on HVM guests running RHEL 5. Up to now I've been using
the RHEL 5 dom0 kernel, but that doesn't work with stub domains because
gntdev isn't built in (and can't be built as a module either -- I
tried). So I built the dom0 kernel from xen-unstable.hg. That
got stub domains working with RHEL 5 HVM guests, but PV on HVM guests
fail to find the root filesystem when initrd gets ready to pivot to the
real root filesystem. PV on HVM without stub domain has the same problem.

--- begin domU console output ---
Creating block device nodes.
Loading xen-platform-pci.ko module
GSI 16 sharing vector 0xA9 and IRQ 16
ACPI: PCI Interrupt 0000:00:03.0[A] -> GSI 28 (level, low) -> IRQ 169
Xen version 3.4.
Hypercall area is 1 pages.
Grant table initialized
Loading xen-vbd.ko module
Loading xen-balloon.ko module
xen_mem: Initialising balloon driver.
Loading xen-vnif.ko module
netfront: Initialising virtual ethernet driver.
Loading jbd.ko module
netfront: device eth0 has copying receive path.
Loading ext3.ko module
Loading xen-vbd.ko module
insmod: error inserting '/lib/xen-vbd.ko': -1 File exists
Loading xen-vbd.ko module
insmod: error inserting '/lib/xen-vbd.ko': -1 File exists
Trying to resume from /dev/xvda2
Unable to access resume device (/dev/xvda2)
Creating root device.
Registering block device major 202
 xvda:Mounting root filesystem.
 xvda1 xvda2 xvda3
mount: could not find filesystem '/dev/root'
Setting up other filesystems.
Setting up new root fs
setuproot: moving /dev failed: No such file or directory
no fstab.sys, mounting internal defaults
setuproot: error mounting /proc: No such file or directory
setuproot: error mounting /sys: No such file or directory
Switching to new root and running init.
unmounting old /dev
unmounting old /proc
unmounting old /sys
switchroot: mount failed: No such file or directory
Kernel panic - not syncing: Attempted to kill init!
--- end domU console output ---

Notice that the PV disks and their partitions are detected.

Kernel command line is root=LABEL=ROOT, but root=/dev/xvda3 doesn't work

This same VM boots fine if I reboot the hypervisor with the RHEL 5 dom0

/var/log/xen/* show nothing out of the ordinary. The only hint of a
problem are these lines from xm dmesg:

(XEN) event_channel.c:192:d0 EVTCHNOP failure: domain 13, error -22
(XEN) event_channel.c:192:d0 EVTCHNOP failure: domain 13, error -22
(XEN) event_channel.c:192:d0 EVTCHNOP failure: domain 13, error -22

If I boot this same VM without disabling the IDE drivers, it mounts
filesystems using /dev/hd* and starts up successfully. Now here's the
baffling part: I can then mount / and /home using /dev/xvd*! So the
paravirt disk driver *is* working once the domU boots off /dev/hd*, but
for some reason it doesn't work when I try to boot from /dev/xvd* directly.

So my questions are:

1. Why can't the initrd mount /dev/xvd* to / ?

2. Why does this work with the RHEL 5 dom0 kernel but not with a
similarly-configured xen-unstable dom0 kernel?

xen-unstable dom0 kernel config attached. I've gotten the
Xen-related stuff as close to RHEL 5 as I can, but available CONFIG_*
defines vary somewhat between the two kernel source trees.

Thanks for any help anyone can provide.


Attachment: config-
Description: Text document

Xen-users mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.