From bbf0a440813816410eeee465b71b37100b2ec9ca Mon Sep 17 00:00:00 2001 From: Stefan Hajnoczi Date: Tue, 5 Oct 2010 14:28:53 +0100 Subject: [PATCH] trace: Trace bdrv_aio_{readv,writev} Observing block layer aio readv/writev operations is useful for debugging image formats or understanding guest disk I/O patterns. Signed-off-by: Stefan Hajnoczi Signed-off-by: Blue Swirl --- block.c | 4 ++++ trace-events | 2 ++ 2 files changed, 6 insertions(+) diff --git a/block.c b/block.c index ebbc376b0c..a19374dfcc 100644 --- a/block.c +++ b/block.c @@ -1983,6 +1983,8 @@ BlockDriverAIOCB *bdrv_aio_readv(BlockDriverState *bs, int64_t sector_num, BlockDriver *drv = bs->drv; BlockDriverAIOCB *ret; + trace_bdrv_aio_readv(bs, sector_num, nb_sectors, opaque); + if (!drv) return NULL; if (bdrv_check_request(bs, sector_num, nb_sectors)) @@ -2007,6 +2009,8 @@ BlockDriverAIOCB *bdrv_aio_writev(BlockDriverState *bs, int64_t sector_num, BlockDriver *drv = bs->drv; BlockDriverAIOCB *ret; + trace_bdrv_aio_writev(bs, sector_num, nb_sectors, opaque); + if (!drv) return NULL; if (bs->read_only) diff --git a/trace-events b/trace-events index b43317e914..4300178f15 100644 --- a/trace-events +++ b/trace-events @@ -51,6 +51,8 @@ disable multiwrite_cb(void *mcb, int ret) "mcb %p ret %d" disable bdrv_aio_multiwrite(void *mcb, int num_callbacks, int num_reqs) "mcb %p num_callbacks %d num_reqs %d" disable bdrv_aio_multiwrite_earlyfail(void *mcb) "mcb %p" disable bdrv_aio_multiwrite_latefail(void *mcb, int i) "mcb %p i %d" +disable bdrv_aio_readv(void *bs, int64_t sector_num, int nb_sectors, void *opaque) "bs %p sector_num %"PRId64" nb_sectors %d opaque %p" +disable bdrv_aio_writev(void *bs, int64_t sector_num, int nb_sectors, void *opaque) "bs %p sector_num %"PRId64" nb_sectors %d opaque %p" # hw/virtio-blk.c disable virtio_blk_req_complete(void *req, int status) "req %p status %d"