[libvirt] [PATCH RFC 02/27] qemu: snapshot: Avoid libvirtd crash when qemu crashes while snapshotting

Eric Blake eblake at redhat.com
Thu Dec 19 04:12:44 UTC 2013


On 12/18/2013 08:42 PM, Eric Blake wrote:
> On 12/16/2013 09:32 AM, Peter Krempa wrote:
>> We shouldn't access the domain definition while we are in the monitor
>> section as the domain is unlocked. Additionaly after we exit from the
> 
> s/Additionaly/Additionally/
> 
>> monitor we need to check if the VM is still alive. Not doing so resulted
>> into crash if qemu exits while attempting to do a external VM snapshot.
> 
> s/into/in a/
> s/a external/an external/
> 
>> ---
>>  src/qemu/qemu_driver.c | 46 +++++++++++++++++++++++++++++++++++-----------
>>  1 file changed, 35 insertions(+), 11 deletions(-)
>>
> 
> ACK.  This one can be applied in spite of the RFC.  And patch 1 was
> indeed helpful in testing this.

Spoke too soon.  After trying to redefine and restart my domain, I got
the dreaded state change lock error, which means there's still a locking
discrepancy in your patch.

2013-12-19 04:09:14.351+0000: 10084: error : qemuMonitorIO:656 :
internal error: End of file from monitor
2013-12-19 04:10:44.000+0000: 10100: warning :
qemuDomainObjBeginJobInternal:1093 : Cannot start job (modify, none) for
domain f18-live; current job is (none, snapshot) owned by (0, 10099)
2013-12-19 04:10:44.000+0000: 10100: error :
qemuDomainObjBeginJobInternal:1097 : Timed out during operation: cannot
acquire state change lock

It's too late for me to try and find it tonight, but I'll try again in
the morning if you haven't found it first.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 621 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20131218/a37a176b/attachment-0001.sig>


More information about the libvir-list mailing list