ae23c9
From 6067fd2ec96b36cb8cc09dc389f5d49c9549ca73 Mon Sep 17 00:00:00 2001
ae23c9
From: Kevin Wolf <kwolf@redhat.com>
ae23c9
Date: Thu, 6 Dec 2018 17:12:32 +0000
ae23c9
Subject: [PATCH 07/15] qcow2: Make sizes more humanly readable
ae23c9
ae23c9
RH-Author: Kevin Wolf <kwolf@redhat.com>
ae23c9
Message-id: <20181206171240.5674-8-kwolf@redhat.com>
ae23c9
Patchwork-id: 83286
ae23c9
O-Subject: [RHEL-8.0 qemu-kvm PATCH 07/15] qcow2: Make sizes more humanly readable
ae23c9
Bugzilla: 1656507
ae23c9
RH-Acked-by: Max Reitz <mreitz@redhat.com>
ae23c9
RH-Acked-by: John Snow <jsnow@redhat.com>
ae23c9
RH-Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
ae23c9
ae23c9
From: Leonid Bloch <lbloch@janustech.com>
ae23c9
ae23c9
Signed-off-by: Leonid Bloch <lbloch@janustech.com>
ae23c9
Reviewed-by: Alberto Garcia <berto@igalia.com>
ae23c9
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
ae23c9
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
ae23c9
(cherry picked from commit b6a95c6d10075bb540ce50198bbe22fc0a4392c7)
ae23c9
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
ae23c9
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
ae23c9
---
ae23c9
 block/qcow2.c | 2 +-
ae23c9
 block/qcow2.h | 9 +++++----
ae23c9
 2 files changed, 6 insertions(+), 5 deletions(-)
ae23c9
ae23c9
diff --git a/block/qcow2.c b/block/qcow2.c
ae23c9
index a0f7234..3859112 100644
ae23c9
--- a/block/qcow2.c
ae23c9
+++ b/block/qcow2.c
ae23c9
@@ -826,7 +826,7 @@ static void read_cache_sizes(BlockDriverState *bs, QemuOpts *opts,
ae23c9
         }
ae23c9
     } else {
ae23c9
         if (!l2_cache_size_set) {
ae23c9
-            *l2_cache_size = MAX(DEFAULT_L2_CACHE_BYTE_SIZE,
ae23c9
+            *l2_cache_size = MAX(DEFAULT_L2_CACHE_SIZE,
ae23c9
                                  (uint64_t)DEFAULT_L2_CACHE_CLUSTERS
ae23c9
                                  * s->cluster_size);
ae23c9
         }
ae23c9
diff --git a/block/qcow2.h b/block/qcow2.h
ae23c9
index 3d92cdb..f73a48a 100644
ae23c9
--- a/block/qcow2.h
ae23c9
+++ b/block/qcow2.h
ae23c9
@@ -27,6 +27,7 @@
ae23c9
 
ae23c9
 #include "crypto/block.h"
ae23c9
 #include "qemu/coroutine.h"
ae23c9
+#include "qemu/units.h"
ae23c9
 
ae23c9
 //#define DEBUG_ALLOC
ae23c9
 //#define DEBUG_ALLOC2
ae23c9
@@ -43,11 +44,11 @@
ae23c9
 
ae23c9
 /* 8 MB refcount table is enough for 2 PB images at 64k cluster size
ae23c9
  * (128 GB for 512 byte clusters, 2 EB for 2 MB clusters) */
ae23c9
-#define QCOW_MAX_REFTABLE_SIZE 0x800000
ae23c9
+#define QCOW_MAX_REFTABLE_SIZE S_8MiB
ae23c9
 
ae23c9
 /* 32 MB L1 table is enough for 2 PB images at 64k cluster size
ae23c9
  * (128 GB for 512 byte clusters, 2 EB for 2 MB clusters) */
ae23c9
-#define QCOW_MAX_L1_SIZE 0x2000000
ae23c9
+#define QCOW_MAX_L1_SIZE S_32MiB
ae23c9
 
ae23c9
 /* Allow for an average of 1k per snapshot table entry, should be plenty of
ae23c9
  * space for snapshot names and IDs */
ae23c9
@@ -75,9 +76,9 @@
ae23c9
 
ae23c9
 /* Whichever is more */
ae23c9
 #define DEFAULT_L2_CACHE_CLUSTERS 8 /* clusters */
ae23c9
-#define DEFAULT_L2_CACHE_BYTE_SIZE 1048576 /* bytes */
ae23c9
+#define DEFAULT_L2_CACHE_SIZE S_1MiB
ae23c9
 
ae23c9
-#define DEFAULT_CLUSTER_SIZE 65536
ae23c9
+#define DEFAULT_CLUSTER_SIZE S_64KiB
ae23c9
 
ae23c9
 
ae23c9
 #define QCOW2_OPT_LAZY_REFCOUNTS "lazy-refcounts"
ae23c9
-- 
ae23c9
1.8.3.1
ae23c9