38 lines
1.5 KiB
Diff
38 lines
1.5 KiB
Diff
From bd345bfdd2f07bc07d4b0e52ebc900c19ee882e0 Mon Sep 17 00:00:00 2001
|
|
From: Pavel Hrdina <phrdina@redhat.com>
|
|
Date: Tue, 25 Aug 2020 15:09:53 +0200
|
|
Subject: [PATCH 050/108] storage_util: fix qemu-img sparse allocation
|
|
|
|
Commit <c9ec7088c7a3f4cd26bb471f1f243931fff6f4f9> introduced a support
|
|
to fully allocate qcow2 images when <allocation> matches <capacity> but
|
|
it doesn't work as expected.
|
|
|
|
The issue is that info.size_arg is in KB but the info.allocation
|
|
introduced by the mentioned commit is in B. This results in using
|
|
"preallocation=falloc," in cases where "preallocation=metadata," should
|
|
be used.
|
|
|
|
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
|
|
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
|
|
(cherry picked from commit 81a3042a12c7c06adc8e95264b6143b2eeb4953f)
|
|
---
|
|
src/storage/storage_util.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/src/storage/storage_util.c b/src/storage/storage_util.c
|
|
index 2e4c7b29b3..4c8316c0d0 100644
|
|
--- a/src/storage/storage_util.c
|
|
+++ b/src/storage/storage_util.c
|
|
@@ -1065,7 +1065,7 @@ virStorageBackendCreateQemuImgCmdFromVol(virStoragePoolObjPtr pool,
|
|
.type = NULL,
|
|
.inputType = NULL,
|
|
.path = vol->target.path,
|
|
- .allocation = vol->target.allocation,
|
|
+ .allocation = VIR_DIV_UP(vol->target.allocation, 1024),
|
|
.encryption = !!vol->target.encryption,
|
|
.preallocate = !!(flags & VIR_STORAGE_VOL_CREATE_PREALLOC_METADATA),
|
|
.compat = vol->target.compat,
|
|
--
|
|
2.33.0
|
|
|