Re: [Qemu-devel] [RFC PATCH v2 17/23] qcow2: Move COW and L2 update into own coroutine

2013-02-15 Thread Stefan Hajnoczi
On Wed, Feb 13, 2013 at 02:22:07PM +0100, Kevin Wolf wrote: > +static bool qcow2_drain(BlockDriverState *bs) I don't like this function name. This function is a bool query but normal drain() means flush requests (i.e. do something that modified state). > +{ > +BDRVQcowState *s = bs->opaque;

[Qemu-devel] [RFC PATCH v2 17/23] qcow2: Move COW and L2 update into own coroutine

2013-02-13 Thread Kevin Wolf
This creates a separate coroutine for processing the COW and the L2 table update of allocating requests. The request itself can then complete while the second part is still being processed. We need a qemu_aio_flush() hook in order to ensure that these coroutines for the second part aren't still ru