[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 0/4] qcow2: Save another common flush
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH 0/4] qcow2: Save another common flush |
Date: |
Fri, 17 Sep 2010 18:18:34 +0200 |
For copy on write (this includes any cluster allocations that don't fill the
whole cluster with one request), what qcow2 does looks like this:
1. Allocate new clusters (increase refcounts)
2. bdrv_flush
3. Copy sectors before the first touched one
4. bdrv_flush
5. Copy sectors after the last touched one
6. bdrv_flush
7. Update the L2 table to point to the new clusters
Step 2 and 4 are not necessary. This series moves flushes around to get all
of these three bdrv_flush calls merged into one.
Kevin Wolf (4):
qcow2: Move sync out of write_refcount_block_entries
qcow2: Move sync out of update_refcount
qcow2: Move sync out of qcow2_alloc_clusters
qcow2: Get rid of additional sync on COW
block/qcow2-cluster.c | 11 ++++++++++-
block/qcow2-refcount.c | 13 ++++++++++++-
block/qcow2-snapshot.c | 2 ++
3 files changed, 24 insertions(+), 2 deletions(-)
--
1.7.2.2
- [Qemu-devel] [PATCH 0/4] qcow2: Save another common flush,
Kevin Wolf <=
- [Qemu-devel] [PATCH 2/4] qcow2: Move sync out of update_refcount, Kevin Wolf, 2010/09/17
- [Qemu-devel] [PATCH 1/4] qcow2: Move sync out of write_refcount_block_entries, Kevin Wolf, 2010/09/17
- [Qemu-devel] [PATCH 3/4] qcow2: Move sync out of qcow2_alloc_clusters, Kevin Wolf, 2010/09/17
- [Qemu-devel] [PATCH 4/4] qcow2: Get rid of additional sync on COW, Kevin Wolf, 2010/09/17
- Re: [Qemu-devel] [PATCH 0/4] qcow2: Save another common flush, Anthony Liguori, 2010/09/17