summaryrefslogtreecommitdiff
path: root/block_int.h
diff options
context:
space:
mode:
authorKevin Wolf <kwolf@redhat.com>2012-12-06 14:32:58 +0100
committerKevin Wolf <kwolf@redhat.com>2012-12-12 12:33:48 +0100
commit41c695c749b84d40e53e64faadedc0392aaea07e (patch)
treec6baf246fdb0c89ee86dc378b5a51d4498de919a /block_int.h
parent3c90c65d7adab49a41952ee14e1d65f81355e408 (diff)
downloadqemu-41c695c749b84d40e53e64faadedc0392aaea07e.tar.gz
qemu-41c695c749b84d40e53e64faadedc0392aaea07e.tar.bz2
qemu-41c695c749b84d40e53e64faadedc0392aaea07e.zip
qemu-io: Add AIO debugging commands
This makes the blkdebug suspend/resume functionality available in qemu-io. Use it like this: $ ./qemu-io blkdebug::/tmp/test.qcow2 qemu-io> break write_aio req_a qemu-io> aio_write 0 4k qemu-io> blkdebug: Suspended request 'req_a' qemu-io> resume req_a blkdebug: Resuming request 'req_a' qemu-io> wrote 4096/4096 bytes at offset 0 4 KiB, 1 ops; 0:00:30.71 (133.359788 bytes/sec and 0.0326 ops/sec) Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block_int.h')
-rw-r--r--block_int.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/block_int.h b/block_int.h
index 9deedb811a..bf3f79b3db 100644
--- a/block_int.h
+++ b/block_int.h
@@ -190,6 +190,12 @@ struct BlockDriver {
void (*bdrv_debug_event)(BlockDriverState *bs, BlkDebugEvent event);
+ /* TODO Better pass a option string/QDict/QemuOpts to add any rule? */
+ int (*bdrv_debug_breakpoint)(BlockDriverState *bs, const char *event,
+ const char *tag);
+ int (*bdrv_debug_resume)(BlockDriverState *bs, const char *tag);
+ bool (*bdrv_debug_is_suspended)(BlockDriverState *bs, const char *tag);
+
/*
* Returns 1 if newly created images are guaranteed to contain only
* zeros, 0 otherwise.