[libvirt] both libvirt 0.7.4 and latest git crashing
matthias.bolte at googlemail.com
Thu Dec 3 21:41:28 UTC 2009
2009/12/3 Nikola Ciprich <extmaillist at linuxbox.cz>:
> few days ago, I've reported problem with libvirt getting stuck while saving kvm.
> Today, I tried latest git and it seems the problem is solved which is great.
> Unfortunately, there seems to be another problem (which I noticed even for 0.7.4 although
> haven't reported yet) is that libvirtd sometimes crashes.
> I'm not 100% sure which action causes it to crash as it's being executed
> by cluster resource manager, but the backtrace might help those familiar
> with it's internals. (I think it's domain start)
> (gdb) bt
> #0 0x00007f4f46d03cd0 in pthread_mutex_unlock () from /lib64/libpthread.so.0
> #1 0x000000000042da91 in qemuDomainObjExitMonitor (obj=0x980a80) at qemu/qemu_driver.c:287
> #2 0x000000000043ca84 in qemudDomainGetInfo (dom=0x978d50, info=0x42690de0) at qemu/qemu_driver.c:3294
> #3 0x00007f4f47ddf3fb in virDomainGetInfo (domain=0x978d50, info=0x42690de0) at libvirt.c:2786
> #4 0x000000000041d79e in remoteDispatchDomainGetInfo (server=<value optimized out>, client=<value optimized out>, conn=0x961840,
> hdr=<value optimized out>, rerr=0x42690e70, args=<value optimized out>, ret=0x42690f50) at remote.c:1076
> #5 0x000000000041f35c in remoteDispatchClientCall (server=0x95b780, client=0x97e310, msg=0x980b00) at dispatch.c:506
> #6 0x000000000041f712 in remoteDispatchClientRequest (server=0x95b780, client=0x97e310, msg=0x980b00) at dispatch.c:388
> #7 0x00000000004147e2 in qemudWorker (data=<value optimized out>) at libvirtd.c:1518
> #8 0x00007f4f46d004a7 in start_thread () from /lib64/libpthread.so.0
> #9 0x00007f4f46a76c2d in clone () from /lib64/libc.so.6
> Could anyone please have a look at it?
> thanks a lot in advance
Seems to be the problem that Daniel tries to fix in this patch:
Unfortunately this patch introduces a lock ordering problem that
results in a deadlock. Daniel is working on a improved patch.
More information about the libvir-list