Bug#649349: xen-hypervisor-4.1-amd64: pygrub fails due to invalid opcode trapped

November 20th, 2011 - 03:10 am ET by Alexandre Vaissière | Report spam
Package: xen-hypervisor-4.1-amd64
Version: 4.1.1-3
Severity: important

Whenever I try to start a domU, xm create failed for
'Boot loader didn't return any data!'.

% sudo xm create -c squeeze.cfg
Using config file "/etc/xen/squeeze.cfg".
Error: Boot loader didn't return any data!

It seems related to the following error in dmesg
[1440.163935] pygrub[3654] trap invalid opcode ip:7f732a997c50 sp:7fff60eb2258 error:0 in ld-2.13.so[7f732a984000+1f000]

Note that pygrub does NOT fail If I launch 'pygrub mydisk.img' on a standard
kernel boot, only if the hypervisor is used (tested with linux-image-3.0.0
and linux-image-2.39.2)

Here are logs taken from xend.log

[2011-11-20 09:01:11 2779] DEBUG (XendDomainInfo:103) XendDomainInfo.create(['vm', ['name', 'squeeze'], ['memory', '128'], ['on_poweroff', 'destroy'], ['on_reboot', 'restart'], ['on_crash', 'restart'], ['on_xend_start', 'ignore'], ['on_xend_stop', 'ignore'], ['vcpus', '2'], ['oos', 1], ['bootloader', '/usr/lib/xen-default/bin/pygrub'], ['bootloader_args', ''], ['image', ['linux', ['root', '/dev/xvda2 ro'], ['videoram', 4], ['tsc_mode', 0], ['nomigrate', 0]]], ['s3_integrity', 1], ['device', ['vbd', ['uname', 'file:/home/xen/data/xen/domains/squeeze/disk.img'], ['dev', 'xvda2'], ['mode', 'w']]], ['device', ['vbd', ['uname', 'file:/home/xen/data/xen/domains/squeeze/swap.img'], ['dev', 'xvda1'], ['mode', 'w']]], ['device', ['vif', ['ip', '192.168.1.42'], ['mac', '00:16:3E:3A:04:EB'], ['bridge', 'xenbr0']]]])
[2011-11-20 09:01:11 2779] DEBUG (XendDomainInfo:2498) XendDomainInfo.constructDomain
[2011-11-20 09:01:11 2779] DEBUG (balloon:187) Balloon: 1687712 KiB free; need 16384; done.
[2011-11-20 09:01:11 2779] DEBUG (XendDomain:476) Adding Domain: 3
[2011-11-20 09:01:11 2779] DEBUG (XendDomainInfo:2836) XendDomainInfo.initDomain: 3 256
[2011-11-20 09:01:11 3654] DEBUG (XendBootloader:113) Launching bootloader as ['/usr/lib/xen-default/bin/pygrub', '--args=root=/dev/xvda2 ro ', '--output=/var/run/xend/boot/xenbl.8881', '/home/starch/data/xen/domains/squeeze/disk.img'].
[2011-11-20 09:01:11 2779] ERROR (XendBootloader:214) Boot loader didn't return any data!
[2011-11-20 09:01:11 2779] ERROR (XendDomainInfo:488) VM start failed
Traceback (most recent call last):
File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendDomainInfo.py", line 474, in start
XendTask.log_progress(31, 60, self._initDomain)
File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendTask.py", line 209, in log_progress
retval = func(*args, **kwds)
File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendDomainInfo.py", line 2838, in _initDomain
self._configureBootloader()
File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendDomainInfo.py", line 3285, in _configureBootloader
bootloader_args, kernel, ramdisk, args)
File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendBootloader.py", line 215, in bootloader
raise VmError, msg
VmError: Boot loader didn't return any data!
[2011-11-20 09:01:11 2779] DEBUG (XendDomainInfo:3071) XendDomainInfo.destroy: domid=3
[2011-11-20 09:01:11 2779] DEBUG (XendDomainInfo:2406) No device model
[2011-11-20 09:01:11 2779] DEBUG (XendDomainInfo:2408) Releasing devices
[2011-11-20 09:01:11 2779] ERROR (XendDomainInfo:108) Domain construction failed



Debian Release: wheezy/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.39-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

xen-hypervisor-4.1-amd64 depends on no packages.

Versions of packages xen-hypervisor-4.1-amd64 recommends:
ii xen-utils-4.1 4.1.1-3

Versions of packages xen-hypervisor-4.1-amd64 suggests:
pn xen-docs-4.1 <none>




To UNSUBSCRIBE, email to debian-bugs-dist-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
email Follow the discussionReplies 10 repliesReplies Make a reply

Replies

#1 Ian Campbell
November 21st, 2011 - 05:40 am ET | Report spam
On Sun, 2011-11-20 at 09:08 +0100, Alexandre Vaissière wrote:
Package: xen-hypervisor-4.1-amd64
Version: 4.1.1-3
Severity: important

Whenever I try to start a domU, xm create failed for
'Boot loader didn't return any data!'.

% sudo xm create -c squeeze.cfg
Using config file "/etc/xen/squeeze.cfg".
Error: Boot loader didn't return any data!

It seems related to the following error in dmesg
[1440.163935] pygrub[3654] trap invalid opcode ip:7f732a997c50 sp:7fff60eb2258 error:0 in ld-2.13.so[7f732a984000+1f000]



An invalid op from the dynamic linker could be a more general bug or a
bug in the python interpreter, but lets try and confirm before we pass
this on.

Note that pygrub does NOT fail If I launch 'pygrub mydisk.img' on a standard
kernel boot, only if the hypervisor is used (tested with linux-image-3.0.


0
and linux-image-2.39.2)



Can you try:
/usr/lib/xen-default/bin/pygrub --args="root=/dev/xvda2 ro" --output=/var/run/xend/boot/xenbl.8881 /home/starch/data/xen/domains/squeeze/disk.img

Since this is the actual command which is failing.

You might want to replace /var/run/xend/boot/xenbl.8881 with your own
temp file (which you will need to touch first).

Having done that (and assuming it does repro the issue) can you run
under gdb to see where the crash really is.

Ian.
Ian Campbell
Current Noise: Venom - Sacrifice

All rights reserved.




To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact

Similar topics