[libvirt] Call to virDomainIsActive hangs forever

Michal Privoznik mprivozn at redhat.com
Fri Mar 23 13:56:29 UTC 2018


On 03/22/2018 05:10 PM, Mathieu Tarral wrote:
> Hi !
> 
> I'm submitting my messages on this mailing list to request a bit of
> help on a case that I have
> where a Python application makes a call to virDomainIsActive, and the
> call never returns.
> 
> I have tried to investigate, but as there are no debug symbols for
> libvirt on Debian Stretch,
> i can only have the following GDB backtrace:
> 
> (gdb) bt
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
> #1  0x00007f49026f5b76 in virCondWait () from /usr/lib/libvirt.so.0
> #2  0x00007f4902808bab in ?? () from /usr/lib/libvirt.so.0
> #3  0x00007f490280a433 in virNetClientSendWithReply () from
> /usr/lib/libvirt.so.0
> #4  0x00007f490280abe2 in virNetClientProgramCall () from /usr/lib/libvirt.so.0
> #5  0x00007f49027e0ea4 in ?? () from /usr/lib/libvirt.so.0
> #6  0x00007f49027ea1bb in ?? () from /usr/lib/libvirt.so.0
> #7  0x00007f49027b0ef3 in virDomainIsActive () from /usr/lib/libvirt.so.0
> #8  0x00007f4902b7fbd0 in libvirt_virDomainIsActive () from
> /usr/lib/python3/dist-packages/libvirtmod.cpython-35m-x86_64-linux-gnu.so
> #9  0x0000558eeec696df in PyCFunction_Call () at ../Objects/methodobject.c:109

This is just a client waiting for server's reply. You want to attach gdb
to corresponding daemon and run 't a a bt' (thread apply all backtrace).
Libvirtd is multithreaded and one of the threads will be executing your API.

Michal




More information about the libvir-list mailing list