[libvirt] [PATCH] snapshot: make quiesce a bit safer

Eric Blake eblake at redhat.com
Mon Mar 19 17:19:46 UTC 2012


On 03/19/2012 04:04 AM, Michal Privoznik wrote:
> On 16.03.2012 21:49, Eric Blake wrote:
>> If a guest is paused, we were silently ignoring the quiesce flag,
>> which results in unclean snapshots, contrary to the intent of the
>> flag.  Since we can't quiesce without guest agent support, we should
>> instead fail if the guest is not running.
>>
>> Meanwhile, if we attempt a quiesce command, but the guest agent
>> doesn't respond, and we time out, we may have left the command
>> pending on the guest's queue, and when the guest resumes parsing
>> commands, it will freeze even though our command is no longer
>> around to issue a thaw.  To be safe, we must _always_ pair every
>> quiesce call with a counterpart thaw, even if the quiesce call
>> failed due to a timeout, so that if a guest wakes up and starts
>> processing a command backlog, it will not get stuck in a frozen
>> state.
>>
>> * src/qemu/qemu_driver.c (qemuDomainSnapshotCreateDiskActive):
>> Always issue thaw after a quiesce, even if quiesce failed.
>> (qemuDomainSnapshotFSThaw): Add a parameter.
>> ---
>>
>> See also: https://bugzilla.redhat.com/show_bug.cgi?id=804210
>> https://www.redhat.com/archives/libvir-list/2012-March/msg00708.html
>>
>>  src/qemu/qemu_driver.c |   51 +++++++++++++++++++++++++++++++++--------------
>>  1 files changed, 36 insertions(+), 15 deletions(-)
>>
> 
> ACK this and the follow up patch as well.

Thanks; pushed.

-- 
Eric Blake   eblake at 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: 620 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20120319/33818ab7/attachment-0001.sig>


More information about the libvir-list mailing list