[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v6 08/24] qcow2: Helper function for refcount mo
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH v6 08/24] qcow2: Helper function for refcount modification |
Date: |
Wed, 11 Feb 2015 11:38:52 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 |
On 02/10/2015 01:28 PM, Max Reitz wrote:
> Since refcounts do not always have to be a uint16_t, all refcount blocks
> and arrays in memory should not have a specific type (thus they become
> pointers to void) and for accessing them, two helper functions are used
> (a getter and a setter). Those functions are called indirectly through
> function pointers in the BDRVQcowState so they may later be exchanged
> for different refcount orders.
>
> With the check and repair functions using this function, the refcount
> array they are creating will be in big endian byte order; additionally,
> using realloc_refcount_array() makes the size of this refcount array
> always cluster-aligned. Both combined allow rebuild_refcount_structure()
> to drop the bounce buffer which was used to convert parts of the
> refcount array to big endian byte order and store them on disk. Instead,
> those parts can now be written directly.
>
> Signed-off-by: Max Reitz <address@hidden>
> ---
> block/qcow2-refcount.c | 126
> ++++++++++++++++++++++++++++---------------------
> block/qcow2.h | 8 ++++
> 2 files changed, 81 insertions(+), 53 deletions(-)
>
Reviewed-by: Eric Blake <address@hidden>
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH v6 04/24] qcow2: Only return status from qcow2_get_refcount, (continued)
- [Qemu-devel] [PATCH v6 04/24] qcow2: Only return status from qcow2_get_refcount, Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 05/24] qcow2: Use unsigned addend for update_refcount(), Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 06/24] qcow2: Use 64 bits for refcount values, Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 10/24] qcow2: Open images with refcount order != 4, Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 08/24] qcow2: Helper function for refcount modification, Max Reitz, 2015/02/10
- Re: [Qemu-devel] [PATCH v6 08/24] qcow2: Helper function for refcount modification,
Eric Blake <=
- [Qemu-devel] [PATCH v6 12/24] qcow2: Use symbolic macros in qcow2_amend_options, Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 07/24] qcow2: Helper for refcount array reallocation, Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 09/24] qcow2: More helpers for refcount modification, Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 13/24] iotests: Prepare for refcount_bits option, Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 15/24] progress: Allow regressing progress, Max Reitz, 2015/02/10
- [Qemu-devel] [PATCH v6 11/24] qcow2: refcount_order parameter for qcow2_create2, Max Reitz, 2015/02/10