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

Re: [Xen-users] "Boot loader did not return any data" to make HVM to PV

  • To: xen-users@xxxxxxxxxxxxx
  • From: Alexandre Kouznetsov <alk@xxxxxxxxxx>
  • Date: Fri, 19 Oct 2012 12:23:01 -0500
  • Delivery-date: Fri, 19 Oct 2012 17:24:08 +0000
  • List-id: Xen user discussion <xen-users.lists.xen.org>

El 19/10/12 07:39, Flako escribió:
The truth is that every tutorial I see it differently and I do not
know where this error.
Which one you followed?

When I start the domU, pvgrub shows the options but when I select the
kenel-xen, returns the error "Boot loader did not return any data!"
You can test pygrub manually:

# touch /var/run/xend/boot/xenbl.bogus
# /usr/lib/xen-default/bin/pygrub  \
 '--output=/var/run/xend/boot/xenbl.bogus' \
# cat /var/run/xend/boot/xenbl.bogus
(see the path of extracted kernel and initrd images, check if they really was extracted. Delete them manually aftewards)
# rm /var/run/xend/boot/xenbl.bogus
("rm /var/run/xend/boot/*" might work, but check first)

pygrub will look for kernel and menu.list on the first image mentioned in the config. In your case it's SLED10_SP2_i586_disco3. Change it if your boot device is the other one.

Note that you will probably need to move your disk image(s) from a partitioned block (or loop) device to a raw one. I would use kpartx and dd for that, but i have never done that with "tap:qcow2" backends. Use with care. Maybe I'm outdated on this.

The truth is that no more look, I'm lost in the different ways of
doing HVM to PV.
A common issue is the attempt to mix instructions from different tutorials (they might use different approach, incompatible to each other). The other side is that it's the way to get the understanding of what's going on, instead of blind execution. If this is your case, make sure you know what's you are doing.

/--xend.log file when I start the domU
        [2012-10-18 12:25:53 27501] DEBUG (XendBootloader:130) Launching
bootloader as ['/usr/bin/pygrub',
'--output=/var/run/xend/boot/xenbl.3769', '/dev/xvdz']
this is where the menu shows pvgrub (/ dev/xvdz1 is mountable and
contains the root of linux)
        [2012-10-18 12:27:31 3511] ERROR (XendBootloader:231) Boot loader
didn't return any data!
It seems like pygrub was able to retrieve menu.list file, but not the boot image. See below for comment about xen.gz.

/-- domU /grub/menu.list
title Xen -- SUSE Linux Enterprise Desktop 10 SP2 xen
     root (hd0,0)
     kernel /boot/xen.gz
     module /boot/vmlinuz- root=/dev/xvda1
vga=0x317 noresume splash=silent showopts clocksource=jiffies
     module /boot/initrd-
\-- domU /grub/menu.list
I agree with James Pifer.
xen.gz is the bootable image of the hypervisor itself. It is executed on the host baremetal system once, and immediately boots Dom0. I has nothing to do in DomU image.

DomU's menu.list should look very much similar to a normal "xenless" machine (or HVM guest), except that it will specify a xen enabled kernel (stored within DomU' disk image) and a xen style root device. The initrd shall include modules for xenblk and xennet.

In resume, fixing menu.list might do the trick. Also, consider moving to a more "native" storage backend, instead of using "tap:qcow" compatibility wrapper.


Alexandre Kouznetsov

Xen-users mailing list



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