Commit b6a95c6d authored by Leonid Bloch's avatar Leonid Bloch Committed by Kevin Wolf
Browse files

qcow2: Make sizes more humanly readable

parent 540b8492
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -830,7 +830,7 @@ static void read_cache_sizes(BlockDriverState *bs, QemuOpts *opts,
        }
    } else {
        if (!l2_cache_size_set) {
            *l2_cache_size = MAX(DEFAULT_L2_CACHE_BYTE_SIZE,
            *l2_cache_size = MAX(DEFAULT_L2_CACHE_SIZE,
                                 (uint64_t)DEFAULT_L2_CACHE_CLUSTERS
                                 * s->cluster_size);
        }
+5 −4
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@

#include "crypto/block.h"
#include "qemu/coroutine.h"
#include "qemu/units.h"

//#define DEBUG_ALLOC
//#define DEBUG_ALLOC2
@@ -43,11 +44,11 @@

/* 8 MB refcount table is enough for 2 PB images at 64k cluster size
 * (128 GB for 512 byte clusters, 2 EB for 2 MB clusters) */
#define QCOW_MAX_REFTABLE_SIZE 0x800000
#define QCOW_MAX_REFTABLE_SIZE S_8MiB

/* 32 MB L1 table is enough for 2 PB images at 64k cluster size
 * (128 GB for 512 byte clusters, 2 EB for 2 MB clusters) */
#define QCOW_MAX_L1_SIZE 0x2000000
#define QCOW_MAX_L1_SIZE S_32MiB

/* Allow for an average of 1k per snapshot table entry, should be plenty of
 * space for snapshot names and IDs */
@@ -75,9 +76,9 @@

/* Whichever is more */
#define DEFAULT_L2_CACHE_CLUSTERS 8 /* clusters */
#define DEFAULT_L2_CACHE_BYTE_SIZE 1048576 /* bytes */
#define DEFAULT_L2_CACHE_SIZE S_1MiB

#define DEFAULT_CLUSTER_SIZE 65536
#define DEFAULT_CLUSTER_SIZE S_64KiB


#define QCOW2_OPT_LAZY_REFCOUNTS "lazy-refcounts"