[libvirt] [PATCHv3] qemu: fix crash when mixing sync and async monitor jobs

Wen Congyang wencongyang at gmail.com
Sat Jul 30 02:53:10 UTC 2011


At 07/30/2011 05:37 AM, Eric Blake write:
> On 07/29/2011 03:32 PM, Eric Blake wrote:
>> Currently, we attempt to run sync job and async job at the same time. It
>> means that the monitor commands for two jobs can be run in any order.
>>
>
>>
>> v3: incorporate Wen's feedback - in particular, virProcessStartCPUs
>> now checks for return type, restarting libvirt does not use an
>> async job, and I didn't hit the deadlock in the same scenarios as
>> I tested under v2.
>> I still need to do migration testing before I'm convinced that this
>> is right, but it's doing a lot better.
>
> Nope, just got a deadlock, by sending SIGINT (^C) during the middle of
> virsh managedsave. I'll have to keep looking for that culprit...

I think it's not a deadlock. Some threads of libvirtd quited, but the thread
to do managedsave does not quit, and it is blocked in qemuMonitorSend(),
and there is no thread to do monitor IO.

>




More information about the libvir-list mailing list