
Daniel P. Berrange schrieb:
On Fri, Aug 14, 2009 at 04:09:32PM +0100, Mark McLoughlin wrote:
On Fri, 2009-08-14 at 16:41 +0200, Mirko Raasch wrote:
Hi,
thanks for you improvements.
I updated libvirt with git and tried to passthrough two pci devices to a linux guest.
<hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x05' slot='0x01' function='0x0'/> </source> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x05' slot='0x03' function='0x0'/> </source> </hostdev>
In the guest, only one of them works and after the shutdown of the guest, i got a segfault on the host.
libvirtd[15363]: segfault at 38 ip 0000000000421164 sp 00007fff59d1dfb0 error 4 in libvirtd[400000+6d000]
I use kernel 2.6.30-4 on the host.
What did i wrong?
It's more a question of what *I* did wrong, probably :-)
Did this work before? With what version? Is there any chance you could use git-bisect to find out what commit introduced the regression?
If not, please run libvirtd from the command line with LIBVIRT_DEBUG and post the log file somewhere. Also, the guest log file from /var/log/libvirt/qemu would help
For segfault crashes, your best bet is actually to just run libvirtd under valgrind. That usually narrows down the problem more quickly than the debug modes
Regards, Daniel
If i run libvirtd from the command line, i got no segfault. If i start libvirt with "/etc/init.d/libvirt-bin start", i got the segfault after the shutdown of the guest. How can i use valgrind or some other debugging options with "/etc/init.d/libvirt-bin"? Mirko