Re: [Qemu-devel] [RFC PATCH v2 2/4] Add block-queue

2010-11-18 Thread Kevin Wolf
Am 17.11.2010 17:23, schrieb Stefan Hajnoczi: > On Wed, Nov 17, 2010 at 1:41 PM, Kevin Wolf wrote: >> Am 17.11.2010 13:43, schrieb Stefan Hajnoczi: A typical sequence in qcow2 (simple cluster allocation) looks like this: 1. Update refcount table 2. bdrv_flush 3. Update L2

Re: [Qemu-devel] [RFC PATCH v2 2/4] Add block-queue

2010-11-17 Thread Stefan Hajnoczi
On Wed, Nov 17, 2010 at 1:41 PM, Kevin Wolf wrote: > Am 17.11.2010 13:43, schrieb Stefan Hajnoczi: >>> A typical sequence in qcow2 (simple cluster allocation) looks like this: >>> >>> 1. Update refcount table >>> 2. bdrv_flush >>> 3. Update L2 entry >>> >>> If we delay the operation and get three

Re: [Qemu-devel] [RFC PATCH v2 2/4] Add block-queue

2010-11-17 Thread Stefan Hajnoczi
On Wed, Nov 17, 2010 at 1:41 PM, Kevin Wolf wrote: > Am 17.11.2010 13:43, schrieb Stefan Hajnoczi: >>> A typical sequence in qcow2 (simple cluster allocation) looks like this: >>> >>> 1. Update refcount table >>> 2. bdrv_flush >>> 3. Update L2 entry >>> >>> If we delay the operation and get three

Re: [Qemu-devel] [RFC PATCH v2 2/4] Add block-queue

2010-11-17 Thread Kevin Wolf
Am 17.11.2010 13:43, schrieb Stefan Hajnoczi: > On Fri, Nov 5, 2010 at 6:38 PM, Kevin Wolf wrote: >> Instead of directly executing writes and fsyncs, queue them and execute them >> asynchronously. What makes this interesting is that we can delay syncs and if >> multiple syncs occur, we can merge t

Re: [Qemu-devel] [RFC PATCH v2 2/4] Add block-queue

2010-11-17 Thread Stefan Hajnoczi
On Fri, Nov 5, 2010 at 6:38 PM, Kevin Wolf wrote: > Instead of directly executing writes and fsyncs, queue them and execute them > asynchronously. What makes this interesting is that we can delay syncs and if > multiple syncs occur, we can merge them into one bdrv_flush. The block-queue concept a

[Qemu-devel] [RFC PATCH v2 2/4] Add block-queue

2010-11-05 Thread Kevin Wolf
Instead of directly executing writes and fsyncs, queue them and execute them asynchronously. What makes this interesting is that we can delay syncs and if multiple syncs occur, we can merge them into one bdrv_flush. A typical sequence in qcow2 (simple cluster allocation) looks like this: 1. Updat