From: Peter Krempa Date: Wed, 17 May 2017 15:16:15 +0000 (+0200) Subject: qemu: driver: Allow passing disk target as top image with block commit X-Git-Tag: v3.4.0-rc1~99 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ed61e0b368859b25beb5259f84edd4910cd5218f;p=thirdparty%2Flibvirt.git qemu: driver: Allow passing disk target as top image with block commit Since we allow active layer block commit the users are allowed to commit the top of the chain (e.g. vda) into the backing image. The API would not accept that parameter, as it tried to look up the image in the backing chain. Add the ability to use the top level image target name explicitly as the top image of the block commit operation. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1451394 --- diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 1c4873e485..36d8a701ac 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -16942,7 +16942,7 @@ qemuDomainBlockCommit(virDomainPtr dom, if (qemuDomainDiskBlockJobIsActive(disk)) goto endjob; - if (!top) + if (!top || STREQ(top, disk->dst)) topSource = disk->src; else if (virStorageFileParseChainIndex(disk->dst, top, &topIndex) < 0 || !(topSource = virStorageFileChainLookup(disk->src, NULL,