On 09/20/2010 05:08 PM, Kevin Wolf wrote:
>
> Let's expand it a bit more:
>
> 1. Update refcount table
> 2. bdrv_flush
> 3. Update L2 entry
> 4. Write data to disk
> 5. Report write complete
>
> I'm struggling to understand how a thread helps out.
This sequence becomes:
1. Update refcount table
2. Write data to disk
3. Report write complete
And only later:
4. Update L2 entry
5. bdrv_flush (possibly merged with other flushes)
The L2 update needs to happen after we're sure the refcount update is
stable, so need a bdrv_flush between them.
Still, the basic idea looks sound. You can do many refcount updates,
flush, many L2 updates, flush.
--
error compiling committee.c: too many arguments to function