FS#28735 - [libvirt] virsh segmentation fault
Attached to Project:
Community Packages
Opened by yanglei (hydra35) - Thursday, 01 March 2012, 18:05 GMT
Last edited by Sergej Pupykin (sergej) - Thursday, 17 May 2012, 10:23 GMT
Opened by yanglei (hydra35) - Thursday, 01 March 2012, 18:05 GMT
Last edited by Sergej Pupykin (sergej) - Thursday, 17 May 2012, 10:23 GMT
|
Details
Description: The following package combination will cause
virsh to crash with segmentation fault every time it is
invoked.
Libvirt: 0.9.10-1 Libnl: libnl-3.2.7-1 Libpcap:libpcap-1.2.1-2 While the following combination works: Libvirt: 0.9.10-1 Libnl: libnl-1.1-3 Libpcap:libpcap-1.2.1-1 * config and/or log files etc. Mar 2 01:43:40 D01 libvirtd: 6219: info : libvirt version: 0.9.10 Mar 2 01:43:40 D01 libvirtd: 6219: info : networkReloadIptablesRules:1512 : Reloading iptables rules Mar 2 01:43:40 D01 libvirtd: 6219: info : qemudStartup:569 : Unable to create cgroup for driver: No such device or address Mar 2 01:43:40 D01 libvirtd: 6219: info : qemudLoadDriverConfig:326 : Configured cgroup controller 'cpu' Mar 2 01:43:40 D01 libvirtd: 6219: info : qemudLoadDriverConfig:326 : Configured cgroup controller 'cpuset' Mar 2 01:43:40 D01 libvirtd: 6219: info : qemudLoadDriverConfig:326 : Configured cgroup controller 'memory' Mar 2 01:43:40 D01 libvirtd: 6219: info : qemudLoadDriverConfig:326 : Configured cgroup controller 'devices' Mar 2 01:43:40 D01 libvirtd: 6219: info : qemudLoadDriverConfig:326 : Configured cgroup controller 'blkio' Mar 2 01:43:41 D01 libvirtd: 6219: info : virDomainLoadAllConfigs:12254 : Scanning for configs in /var/run/libvirt/qemu Mar 2 01:43:41 D01 libvirtd: 6219: info : virDomainLoadAllConfigs:12254 : Scanning for configs in /etc/libvirt/qemu Mar 2 01:43:41 D01 libvirtd: 6219: info : virDomainLoadAllConfigs:12254 : Scanning for configs in /var/run/libvirt/lxc Mar 2 01:43:41 D01 libvirtd: 6219: info : virDomainLoadAllConfigs:12254 : Scanning for configs in /etc/libvirt/lxc Mar 2 01:43:41 D01 libvirtd: 6219: info : umlStartup:478 : Adding inotify watch on /var/run/libvirt/uml-guest Mar 2 01:43:41 D01 libvirtd: 6219: info : virDomainLoadAllConfigs:12254 : Scanning for configs in /etc/libvirt/uml Mar 2 01:44:30 D01 kernel: [19286.538661] virsh[6280]: segfault at 28 ip 00007f8af921ab8d sp 00007fff6bbe8640 error 4 in libnl.so.1.1[7f8af91e4000+4d000] Steps to reproduce: 1. Upgrade system: pacman -Syu 2. rc.d libvirtd start 3. virsh list <-- 100% segmentation fault |
This task depends upon
Closed by Sergej Pupykin (sergej)
Thursday, 17 May 2012, 10:23 GMT
Reason for closing: Fixed
Additional comments about closing: probably fixed with FS#28945
Thursday, 17 May 2012, 10:23 GMT
Reason for closing: Fixed
Additional comments about closing: probably fixed with
In my case libguestfs segfaulted too, because it was linked against libvirt. All libvirt programs segfaults at the end when calling genl_unregister from /usr/lib/libnl.so.1
root@darkstar ~]# gdb virsh
GNU gdb (GDB) 7.4
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/virsh...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/virsh
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
[New Thread 0x7ffff0dde700 (LWP 476)]
Welcome to virsh, the virtualization interactive terminal.
Type: 'help' for help with commands
'quit' to quit
virsh # quit
[Thread 0x7ffff0dde700 (LWP 476) exited]
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff731fb8d in genl_unregister () from /usr/lib/libnl.so.1
(gdb) quit
A debugging session is active.
Inferior 1 [process 473] will be killed.
Quit anyway? (y or n) y
But then we can not install any package that depend on libnl 3.x because it conflicts with libnl 1.x.
For now, packages such as net-snmp already depends on libnl 3.x and libnl is a core package which many other packages depend on, it will push its dependents to patching and upgrading.
It seems for me that the cleanest solution is to patch netcf to use libnl 3.x.
No more crashes with virsh:-)