[libvirt] [PATCH 3/3] snapshot: rudimentary qemu support for atomic disk snapshot
Eric Blake
eblake at redhat.com
Sat Mar 17 16:05:07 UTC 2012
On 03/16/2012 04:05 PM, Eric Blake wrote:
> Taking an external snapshot of just one disk is atomic, without having
> to pause and resume the VM. This also paves the way for later patches
> to interact with the new qemu 'transaction' monitor command.
>
> The various scenarios when requesting atomic are:
> online, 1 disk, old qemu - safe, allowed by this patch
> online, more than 1 disk, old qemu - failure, this patch
> offline snapshot - safe, once a future patch implements offline disk snapshot
> online, 1 or more disks, new qemu - safe, once future patch uses transaction
This is incomplete:
> @@ -10069,7 +10081,8 @@ qemuDomainSnapshotCreateXML(virDomainPtr domain,
> VIR_DOMAIN_SNAPSHOT_CREATE_HALT |
> VIR_DOMAIN_SNAPSHOT_CREATE_DISK_ONLY |
> VIR_DOMAIN_SNAPSHOT_CREATE_REUSE_EXT |
> - VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE, NULL);
> + VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE |
> + VIR_DOMAIN_SNAPSHOT_CREATE_ATOMIC, NULL);
By accepting the new 'atomic' flag, we now have to ensure it works for
all modes.
As written, v1 covered the disk-snapshot mode. The live system
checkpoint mode is already atomic ('savevm' is a single monitor command;
if it can fail partway through, that's a bug in qemu). But for offline
internal snapshots, we were making iterative calls to 'qemu-img snapshot
-c', and not cleaning up after partial failure. I'm sending a v2 to fix
that.
--
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/20120317/32e9bfd7/attachment-0001.sig>
More information about the libvir-list
mailing list