From: Fam Zheng <f...@redhat.com>

We already specified BDRV_O_UNMAP when opening images in 'qemu-img
commit', but didn't turn on the "unmap" in the active commit job. This
patch fixes that so that zeroed clusters in top image can be discarded
which is desired in the virt-sparsify use case, where a temporary
overlay is created and fstrim'ed before commiting back, to free space in
the original image.

This also enables it for block-commit.

Signed-off-by: Fam Zheng <f...@redhat.com>
Reviewed-by: Eric Blake <ebl...@redhat.com>
Message-id: 1474974892-5031-1-git-send-email-f...@redhat.com
Signed-off-by: Jeff Cody <jc...@redhat.com>
---
 block/mirror.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block/mirror.c b/block/mirror.c
index 3a0788e..80be93e 100644
--- a/block/mirror.c
+++ b/block/mirror.c
@@ -1074,7 +1074,7 @@ void commit_active_start(const char *job_id, 
BlockDriverState *bs,
 
     mirror_start_job(job_id, bs, base, NULL, speed, 0, 0,
                      MIRROR_LEAVE_BACKING_CHAIN,
-                     on_error, on_error, false, cb, opaque, &local_err,
+                     on_error, on_error, true, cb, opaque, &local_err,
                      &commit_active_job_driver, false, base, auto_complete);
     if (local_err) {
         error_propagate(errp, local_err);
-- 
2.7.4


Reply via email to