On 26/05/2016 09:10, Fam Zheng wrote: > > diff --git a/block/io.c b/block/io.c > index d480097..a6523cf 100644 > --- a/block/io.c > +++ b/block/io.c > @@ -1435,8 +1435,10 @@ int coroutine_fn bdrv_co_pwritev(BlockDriverState *bs, > * than one aligned block. > */ > if (bytes < align) { > + bdrv_debug_event(bs, BLKDBG_PWRITEV_RMW_TAIL); > qemu_iovec_add(&local_qiov, head_buf + bytes, align - bytes); > bytes = align; > + bdrv_debug_event(bs, BLKDBG_PWRITEV_RMW_AFTER_TAIL); > } > }
This doesn't look too wrong... Should the right sequence of events be head/after_head or head/after_tail? It's probably simplest to just emit all four events. Paolo