qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v2 00/21] qcow2: Rework cluster allocation even more


From: Kevin Wolf
Subject: [Qemu-devel] [PATCH v2 00/21] qcow2: Rework cluster allocation even more
Date: Tue, 26 Mar 2013 17:49:52 +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 (21):
  qemu-iotests: More concurrent allocation scenarios
  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: Prepare handle_alloc/copied() for byte granularity
  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      | 507 ++++++++++++++++++++++++++++++++-------------
 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 +-
 tests/qemu-iotests/046     |  49 ++++-
 tests/qemu-iotests/046.out |  76 +++++++
 trace-events               |   2 +
 9 files changed, 534 insertions(+), 163 deletions(-)

-- 
1.8.1.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]