[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/19] qcow2: Rework cluster allocation even more
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH 00/19] qcow2: Rework cluster allocation even more |
Date: |
Mon, 25 Mar 2013 18:30:01 +0100 |
This is the start of the latest Delayed COW series. As there seem to be serious
problems with the actual Delayed COW (which in fact exist today, but would
become a bit easier to hit) and I don't have the time to complete this at the
moment, here is another series with preparatory patches, for which there's no
reason to not get them applied now.
The result is a somewhat cleaner cluster allocation code in qcow2, and in
theory some cases should show improved performance - in practice I think these
cases are unlikely to occur, but as the optimisation falls out naturally, let's
just take it.
Kevin Wolf (19):
qcow2: Fix "total clusters" number in bdrv_check
qcow2: Remove bogus unlock of s->lock
qcow2: Handle dependencies earlier
qcow2: Improve check for overlapping allocations
qcow2: Change handle_dependency to byte granularity
qcow2: Decouple cluster allocation from cluster reuse code
qcow2: Factor out handle_alloc()
qcow2: handle_alloc(): Get rid of nb_clusters parameter
qcow2: handle_alloc(): Get rid of keep_clusters parameter
qcow2: Finalise interface of handle_alloc()
qcow2: Clean up handle_alloc()
qcow2: Factor out handle_copied()
qcow2: handle_copied(): Get rid of nb_clusters parameter
qcow2: handle_copied(): Get rid of keep_clusters parameter
qcow2: handle_copied(): Implement non-zero host_offset
qcow2: Use byte granularity in qcow2_alloc_cluster_offset()
qcow2: Allow requests with multiple l2metas
qcow2: Move cluster gathering to a non-looping loop
qcow2: Gather clusters in a looping loop
block/qcow2-cluster.c | 491 +++++++++++++++++++++++++++++++--------------
block/qcow2-refcount.c | 4 +-
block/qcow2.c | 16 +-
block/qcow2.h | 29 +++
tests/qemu-iotests/038.out | 10 +-
tests/qemu-iotests/044.out | 4 +-
trace-events | 2 +
7 files changed, 394 insertions(+), 162 deletions(-)
--
1.8.1.4
- [Qemu-devel] [PATCH 00/19] qcow2: Rework cluster allocation even more,
Kevin Wolf <=
- [Qemu-devel] [PATCH 04/19] qcow2: Improve check for overlapping allocations, Kevin Wolf, 2013/03/25
- [Qemu-devel] [PATCH 02/19] qcow2: Remove bogus unlock of s->lock, Kevin Wolf, 2013/03/25
- [Qemu-devel] [PATCH 03/19] qcow2: Handle dependencies earlier, Kevin Wolf, 2013/03/25
- [Qemu-devel] [PATCH 01/19] qcow2: Fix "total clusters" number in bdrv_check, Kevin Wolf, 2013/03/25
- [Qemu-devel] [PATCH 06/19] qcow2: Decouple cluster allocation from cluster reuse code, Kevin Wolf, 2013/03/25
- [Qemu-devel] [PATCH 05/19] qcow2: Change handle_dependency to byte granularity, Kevin Wolf, 2013/03/25
- [Qemu-devel] [PATCH 09/19] qcow2: handle_alloc(): Get rid of keep_clusters parameter, Kevin Wolf, 2013/03/25