1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-03-07 17:28:15 +00:00

storage: Add --shrink to qemu-img command when shrinking vol

https://bugzilla.redhat.com/show_bug.cgi?id=1613746

When shrinking the capacity of a qcow2 or luks volume using
the qemu-img program, the --shrink qualifier must be added.

Signed-off-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
John Ferlan 2018-08-17 15:53:29 -04:00
parent b4833917f1
commit b04d1b6a35

View File

@ -2294,12 +2294,12 @@ storageBackendResizeQemuImg(virStoragePoolObjPtr pool,
* a multiple of 512 */
capacity = VIR_ROUND_UP(capacity, 512);
cmd = virCommandNew(img_tool);
cmd = virCommandNewArgList(img_tool, "resize", NULL);
if (capacity < vol->target.capacity)
virCommandAddArg(cmd, "--shrink");
if (!vol->target.encryption) {
virCommandAddArgList(cmd, "resize", vol->target.path, NULL);
virCommandAddArg(cmd, vol->target.path);
} else {
virCommandAddArg(cmd, "resize");
if (storageBackendCreateQemuImgSecretObject(cmd, secretPath,
secretAlias) < 0)
goto cleanup;