|
From: | Anthony Liguori |
Subject: | Re: [Qemu-devel] [PATCH 0/4] qcow2: Save another common flush |
Date: | Fri, 17 Sep 2010 12:05:04 -0500 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.12) Gecko/20100826 Lightning/1.0b1 Thunderbird/3.0.7 |
On 09/17/2010 11:18 AM, Kevin Wolf wrote:
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.
Makes sense to me. Regards, Anthony Liguori
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(-)
[Prev in Thread] | Current Thread | [Next in Thread] |