[Pkg-libvirt-maintainers] Bug#840853: python-guestfs: image creation hangs with QEMU 2.7 from unstable

Neil Williams codehelp at debian.org
Sat Oct 15 15:16:36 UTC 2016


Package: python-guestfs
Version: 1:1.32.7-1+b2
Severity: important

I've been developing scripts using python-guestfs to create a new image, with
a single partition and ext2 filesystem, then adding files from a tar
before unmounting. This has been working flawlessly until the update in
unstable today:

Get:1 http://mirror.bytemark.co.uk/debian unstable/main amd64 qemu-system-common amd64 1:2.7+dfsg-1 [383 kB]
Get:2 http://mirror.bytemark.co.uk/debian unstable/main amd64 libcryptsetup4 amd64 2:1.7.2-4 [107 kB]
Get:3 http://mirror.bytemark.co.uk/debian unstable/main amd64 cryptsetup-bin amd64 2:1.7.2-4 [215 kB]
Get:4 http://mirror.bytemark.co.uk/debian unstable/main amd64 cryptsetup amd64 2:1.7.2-4 [169 kB]
Get:5 http://mirror.bytemark.co.uk/debian unstable/main amd64 libdatrie1 amd64 0.2.10-4 [36.1 kB]
Get:6 http://mirror.bytemark.co.uk/debian unstable/main amd64 libnautilus-extension1a amd64 3.22.1-1 [33.6 kB]
Get:7 http://mirror.bytemark.co.uk/debian unstable/main amd64 qemu-system-arm amd64 1:2.7+dfsg-1 [4,887 kB]
Get:8 http://mirror.bytemark.co.uk/debian unstable/main amd64 qemu-kvm amd64 1:2.7+dfsg-1 [56.0 kB]
Get:9 http://mirror.bytemark.co.uk/debian unstable/main amd64 qemu-system-x86 amd64 1:2.7+dfsg-1 [4,433 kB]
Get:10 http://mirror.bytemark.co.uk/debian unstable/main amd64 qemu-user-static amd64 1:2.7+dfsg-1 [6,722 kB]
Get:11 http://mirror.bytemark.co.uk/debian unstable/main amd64 qemu-utils amd64 1:2.7+dfsg-1 [765 kB]

The script I've been using is available here:
https://git.linaro.org/lava-team/refactoring.git/blob/eb2a1cf8e2e1505c349f8ad95062ef1fa648c463:/scripts/build-foreign-image.sh
That uses debootstrap to create an arm64 root filesystem (so needs qemu-user-static installed),
then calls a python script to put that system into an image:
https://git.linaro.org/lava-team/refactoring.git/blob/eb2a1cf8e2e1505c349f8ad95062ef1fa648c463:/scripts/guest-img.py

The script now just hangs, never returning but not taking any noticeable CPU load.

The process list shows the following command line:
/usr/bin/qemu-system-x86_64 -global virtio-blk-pci.scsi=off -nodefconfig -enable-fips -nodefaults -display none -machine accel=kvm:tcg -cpu host -m 500 -no-reboot -rtc driftfix=slew -no-hpet -global kvm-pit.lost_tick_policy=discard -kernel /var/tmp/.guestfs-0/appliance.d/kernel -initrd /var/tmp/.guestfs-0/appliance.d/initrd -device virtio-scsi-pci,id=scsi -drive file=/var/lib/lava/dispatcher/tmp/10309/apply-overlay-guest-ftyZ0O/lava-guest.qcow2,cache=writeback,format=qcow2,id=hd0,if=none -device scsi-hd,drive=hd0 -drive file=/var/tmp/.guestfs-0/appliance.d/root,snapshot=on,id=appliance,cache=unsafe,if=none,format=raw -device scsi-hd,drive=appliance -device virtio-serial-pci -serial stdio -device sga -chardev socket,path=/tmp/libguestfsdfRCJ2/guestfsd.sock,id=channel0 -device virtserialport,chardev=channel0,name=org.libguestfs.channel.0 -append panic=1 console=ttyS0 udevtimeout=6000 udev.event-timeout=6000 no_timer_check acpi=off printk.time=1 cgroup_disable=memory root=/dev/sdb selinux=0 TERM=linux

(Although I'm building an image that will be used with qemu-system-aarch64, the filesystem is
unpacked without reference to the architecture of the binaries inside
it. The script just takes a .tar and unpacks it.)

QEMU itself appears to continue working for running virtual machines
(including machines created using this same script before the update).

I've tried restarting the libvirtd-daemon and libvirt-guest services,
no effect.

The same process is being used in lava-dispatcher to run tests using
QEMU - test jobs now fail when the current version of python-guestfs is
combined with qemu 2.7 in the same place, creating a filesystem for the
test, before the test files themselves are actually loaded.

python-guestfs fails with:

ii  qemu-system-x86                       1:2.7+dfsg-1

Downgrading qemu to the version in testing fixes the problems:

ii  qemu-system-x86                       1:2.6+dfsg-3.1


-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, armhf, arm64

Kernel: Linux 4.7.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages python-guestfs depends on:
ii  libc6        2.24-3
ii  libguestfs0  1:1.32.7-1+b2
ii  python       2.7.11-2
pn  python:any   <none>

python-guestfs recommends no packages.

python-guestfs suggests no packages.

-- no debconf information


-- 


Neil Williams
=============
http://www.linux.codehelp.co.uk/

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 801 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-libvirt-maintainers/attachments/20161015/dfb6c1ed/attachment.sig>


More information about the Pkg-libvirt-maintainers mailing list