]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: snapshot: Always rewrite backingStore data when reusing existing images
authorPeter Krempa <pkrempa@redhat.com>
Fri, 24 Jan 2020 13:14:58 +0000 (14:14 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 27 Jan 2020 13:02:01 +0000 (14:02 +0100)
Don't adopt the backing store data when reusing images provided by the
user. This will force a backing chain re-probe as users might have
passed in something unexpected in the overlay where our view of the
backing chain would not correspond.

This is done only for inactive snapshots as there we have way less
verification.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
src/qemu/qemu_driver.c

index 94703c67c2a9018ba9e15cd17c26ceabe3cbeb74..a833951e47d284ccd068747679564812bb103af8 100644 (file)
@@ -14699,7 +14699,8 @@ qemuDomainSnapshotCreateInactiveExternal(virQEMUDriverPtr driver,
         if (virStorageSourceInitChainElement(newsrc, defdisk->src, false) < 0)
             goto cleanup;
 
-        if (virStorageSourceHasBacking(defdisk->src)) {
+        if (!reuse &&
+            virStorageSourceHasBacking(defdisk->src)) {
             defdisk->src->readonly = true;
             newsrc->backingStore = g_steal_pointer(&defdisk->src);
         } else {