I ran 'make check' under a heavily loaded system, and it hung in
qemumonitorjsontest as follows:
(gdb) t a a bt
Thread 2 (Thread 0x2b0f8000e700 (LWP 423)):
#0 0x00000032f96e998d in poll () from /lib64/libc.so.6
#1 0x00002b0f7f3a1951 in virEventPollRunOnce () at util/event_poll.c:615
#2 0x00002b0f7f39fb26 in virEventRunDefaultImpl () at util/event.c:247
#3 0x00000000004c25fa in qemuMonitorTestWorker (opaque=0x1ad8bc0)
at qemumonitortestutils.c:308
#4 0x00002b0f7f3bbc39 in virThreadHelper (data=0x1ada580)
at util/threads-pthread.c:161
#5 0x00000032f9a07d15 in start_thread () from /lib64/libpthread.so.0
#6 0x00000032f96f246d in clone () from /lib64/libc.so.6
Thread 1 (Thread 0x2b0f7fe0bbc0 (LWP 402)):
#0 0x00000032f9a08e60 in pthread_join () from /lib64/libpthread.so.0
#1 0x00002b0f7f3bbeae in virThreadJoin (thread=0x1ad8be8)
at util/threads-pthread.c:236
#2 0x00000000004c27b0 in qemuMonitorTestFree (test=0x1ad8bc0)
at qemumonitortestutils.c:362
#3 0x00000000004144ba in testQemuMonitorJSONGetMachines (data=0x1ac7650)
at qemumonitorjsontest.c:298
#4 0x0000000000414ef2 in virtTestRun (title=0x4c3434 "GetMachines",
nloops=1,
body=0x413f3e <testQemuMonitorJSONGetMachines>, data=0x1ac7650)
at testutils.c:160
---Type <return> to continue, or q <return> to quit---
#5 0x00000000004149f4 in mymain () at qemumonitorjsontest.c:446
#6 0x0000000000416092 in virtTestMain (argc=1, argv=0x7fffc02dcac8,
func=0x41493d <mymain>) at testutils.c:719
#7 0x0000000000414aab in main (argc=1, argv=0x7fffc02dcac8)
at qemumonitorjsontest.c:455
This was with latest libvirt.git, so I'm worried we still have a nasty
race somewhere in there.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org