diff options
author | Max Reitz <mreitz@redhat.com> | 2015-02-10 15:28:43 -0500 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2015-03-10 14:02:20 +0100 |
commit | 346a53df38e29021e4a9e8c2a759b05744902857 (patch) | |
tree | 4fb40e0b5184a98ccd17fb7d67708a7ef9c88c5b /block/qcow2.c | |
parent | 0a6ed700061fdd86b3c4b71366be42503ac2ce23 (diff) | |
download | qemu-346a53df38e29021e4a9e8c2a759b05744902857.zip qemu-346a53df38e29021e4a9e8c2a759b05744902857.tar.gz qemu-346a53df38e29021e4a9e8c2a759b05744902857.tar.bz2 |
qcow2: Add two new fields to BDRVQcowState
Add two new fields regarding refcount information (the bit width of
every entry and the maximum refcount value) to the BDRVQcowState.
Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block/qcow2.c')
-rw-r--r-- | block/qcow2.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/block/qcow2.c b/block/qcow2.c index 50e0a94..e04ba6d 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -684,6 +684,9 @@ static int qcow2_open(BlockDriverState *bs, QDict *options, int flags, goto fail; } s->refcount_order = header.refcount_order; + s->refcount_bits = 1 << s->refcount_order; + s->refcount_max = UINT64_C(1) << (s->refcount_bits - 1); + s->refcount_max += s->refcount_max - 1; if (header.crypt_method > QCOW_CRYPT_AES) { error_setg(errp, "Unsupported encryption method: %" PRIu32, |