Community Packages

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#35031 - [libvirt] virsh migrate broke with 1.0.4-2 update

Attached to Project: Community Packages
Opened by Kevin Shanahan (kmshanah) - Tuesday, 30 April 2013, 01:39 GMT
Last edited by Sergej Pupykin (sergej) - Friday, 17 May 2013, 10:12 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Sergej Pupykin (sergej)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

After upgrading from 1.0.4-1 to 1.0.4-2 (x86_64), virsh migrate no longer works for me.

Steps to reproduce:

# virsh migrate --live --verbose "$HOST" qemu+ssh://$DEST/system
error: Unable to copy socket file handle: Invalid argument

Migration failed - exit code 1

Note that this is only outgoing migration, an incoming migration from a 1.0.4-1 host to a 1.0.4-2 host appears to work correctly.
This task depends upon

Closed by  Sergej Pupykin (sergej)
Friday, 17 May 2013, 10:12 GMT
Reason for closing:  Upstream
Additional comments about closing:  will wait for upstream fix
Comment by Kevin Shanahan (kmshanah) - Monday, 06 May 2013, 01:29 GMT
Same error with 1.0.5-1.
Comment by Kevin Shanahan (kmshanah) - Monday, 06 May 2013, 06:48 GMT
I had a look at the changes between 1.0.4-1 and 1.0.4-2 and nothing seemed wrong there.
I then checked out the 1.0.4-1 pkgbuild from svn and built it and that now fails in the same way too (the original 1.0.4-1 binary from my pacman cache still works fine).

So, it seems like the problem is something to do with the build environment.

Are you able to tell what changed in the build environment between the time when 1.0.4-1 was built and when 1.0.4-2 was built?
Comment by Sergej Pupykin (sergej) - Monday, 06 May 2013, 12:09 GMT
group="kvm" was added into qemu.conf in 1.0.4-2 (see  FS#35000 )
Comment by Kevin Shanahan (kmshanah) - Tuesday, 07 May 2013, 03:02 GMT
Yeah, the config is not the problem as far as I can tell.
Do you still have your 1.0.4-1 binary around? Does the sha1sum match?

f9278d0aeffd04302010672d97bf64e490ff7127 /var/cache/pacman/pkg/libvirt-1.0.4-1-x86_64.pkg.tar.xz
787284398930726c93f87332c75e955bb796c1f4 /var/cache/pacman/pkg/libvirt-1.0.4-2-x86_64.pkg.tar.xz

I assume there's some way I can check the package signature to see if I built this myself or not, but I can't work it out :(
Comment by Kevin Shanahan (kmshanah) - Tuesday, 07 May 2013, 03:19 GMT
Ah, this is pretty much what I was looking for:

$ pacman -Qip libvirt-1.0.4-1-x86_64.pkg.tar.xz.orig
Name : libvirt
Version : 1.0.4-1
Description : API for controlling virtualization engines
(openvz,kvm,qemu,virtualbox,xen,etc)
Architecture : x86_64
URL : http://libvirt.org/
Licenses : LGPL
Groups : None
Provides : None
Depends On : e2fsprogs gnutls iptables libxml2 parted polkit python2
avahi yajl libpciaccess udev dbus-core libxau libxdmcp
libpcap curl libsasl libgcrypt libgpg-error openssl
libxcb gcc-libs iproute2 libnl libx11 audit
Optional Deps : bridge-utils: for briged networking (default)
dnsmasq: for NAT/DHCP for guests
kvm
openbsd-netcat: for remote management over ssh
qemu
radvd
dmidecode
ebtables
Conflicts With : None
Replaces : None
Compressed Size: 4307.25 KiB
Installed Size : 30612.00 KiB
Packager : Sergej Pupykin <pupykin.s+arch@gmail.com>
Build Date : Mon 01 Apr 2013 20:45:14 CST
Install Script : Yes
Validated By : None
Signatures : None
Comment by Kevin Shanahan (kmshanah) - Tuesday, 07 May 2013, 03:24 GMT
I probably wasn't very clear before, so here is an excerpt from my bash_history file:

510 mkdir abs-svn
511 cd abs-svn/
513 svn checkout --depth=empty svn://svn.archlinux.org/community
514 cd community/
515 svn update libvirt
517 svn log libvirt | less
518 svn update -r87473 libvirt
519 cd libvirt/
522 cd trunk/
524 makepkg -s 2>&1 | tee ../../libvirt-1.0.4-1.build.log

The resulting package exhibits the behaviour I first saw when upgrading to 1.0.4-2 (error: Unable to copy socket file handle: Invalid argument) which leads me to believe the problem is something to do with the compiler or library versions present at the time the package was built.

$ pacman -Qip libvirt-1.0.4-1-x86_64.pkg.tar.xz
Name : libvirt
Version : 1.0.4-1
Description : API for controlling virtualization engines
(openvz,kvm,qemu,virtualbox,xen,etc)
Architecture : x86_64
URL : http://libvirt.org/
Licenses : LGPL
Groups : None
Provides : None
Depends On : e2fsprogs gnutls iptables libxml2 parted polkit python2
avahi yajl libpciaccess udev dbus-core libxau libxdmcp
libpcap curl libsasl libgcrypt libgpg-error openssl
libxcb gcc-libs iproute2 libnl libx11 audit
Optional Deps : bridge-utils: for briged networking (default)
dnsmasq: for NAT/DHCP for guests
kvm
openbsd-netcat: for remote management over ssh
qemu
radvd
dmidecode
ebtables
Conflicts With : None
Replaces : None
Compressed Size: 4356.35 KiB
Installed Size : 27882.00 KiB
Packager : Kevin Shanahan <kmshanah@disenchant.net>
Build Date : Mon 06 May 2013 16:06:49 CST
Install Script : Yes
Validated By : None
Signatures : None
Comment by Kevin Shanahan (kmshanah) - Thursday, 16 May 2013, 06:17 GMT
Ok, I found the cause and it looks like it is now fixed upstream.
Some random change in the compiler must have triggered a change in the stack layout which exposed this error.

http://libvirt.org/git/?p=libvirt.git;a=commitdiff;h=d6670a64e1067f29da3c3e032739e140280b763d

You might include this patch in an update, or wait for the next upstream release I guess.
Anyway, please close this bug now. Cheers.

Loading...