Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-users

[Xen-users] Problems converting FC8 HVM guest to PV

To: Xen <xen-users@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-users] Problems converting FC8 HVM guest to PV
From: Evan Lavelle <sa212+xen@xxxxxxxxxxx>
Date: Thu, 27 Dec 2007 23:35:54 +0000
Delivery-date: Thu, 27 Dec 2007 15:36:50 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 2.0.0.9 (Windows/20071031)
I'm running a Fedora 8 Dom0, x86_64, with a Fedora 8 DomU, HVM, i386. I'd like to convert the (working) DomU to PV, but I've been banging my head against a brick wall for the last few hours. Can anyone point me in the right direction?

Plan A was to use pygrub, and to make a new DomU ramdisk with the xenblock module. I ran mkinitrd with --preload=xenblock, and set up a new grub entry on the DomU:

title Fedora (2.6.21-2952.fc8xen.xenblk)
 root (hd0,0)
 kernel /xen.gz-2.6.21-2952.fc8
 module /vmlinuz-2.6.21-2952.fc8xen ro root=LABEL=/ rhgb quiet
 module /initrd-2.6.21-2952.fc8xen.xenblk.img

The config file on the Dom0 was:

name   = "fc8-32-001"
memory = 1024
vcpus  = 1
vif  = [ 'mac=00:0f:b5:ae:4f:2a, bridge=xenbr0' ]
disk = [ 'phy:/dev/VG_Guests/FC8-32-001,hda,w' ,
         'file:/tmp/FC8-32.ISO,hdc:cdrom,r'];
bootloader="/usr/bin/pygrub"
boot = "cd"
sdl  = 1
vnc  = 0

When I created the domU, pygrub correctly gave me the boot menu from the DomU, but it wouldn't boot the entry above; it complained that it wasn't a valid kernel ("not a Xen-ELF image", and it wasn't a xen_guest). However, it *is* a valid (gzipped) Xen kernel (I know because readelf reports a __xen_guest entry, and if I use it as the HVM DomU kernel then uname reports it as a Xen kernel). So, I figured that pygrub was broken, and moved on to plan B.

Plan B was to move the 32-bit guest kernel and ramdisk to the Dom0, and modify the config file. I've tried lots of different variations on the config file, and I've currently got:

name   = "fc8-32-002"
memory = 1024
vcpus  = 1
vif  = [ 'mac=00:0f:b5:ae:4f:2a, bridge=xenbr0' ]
disk = [ 'phy:/dev/VG_Guests/FC8-32-001,hda,w' ];
#bootloader="/usr/bin/pygrub"
kernel  = "/boot/fc8-32/vmlinuz-2.6.21-2952.fc8xen"
ramdisk = "/boot/fc8-32/initrd-2.6.21-2952.fc8xen.img"
root    = "/dev/hda ro"
sdl     = 1
vnc     = 0

This doesn't work, and none of the variations worked. I copied the 32-bit DomU Xenified kernel into the Dom0 path in the 'kernel' line. I've tried the config with and without the ramdisk line, and with the original 32-bit guest initrd, as well as my new xenblock version. I've tried variations on the 'hda' as well, and on the root line. I get several different error messages.

Any ideas? I suspect that I'm missing something obvious.

Thanks -

Evan

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users