diff options
| author | Fam Zheng <famz@redhat.com> | 2013-11-20 10:01:54 +0800 |
|---|---|---|
| committer | Kevin Wolf <kwolf@redhat.com> | 2013-11-29 13:40:37 +0100 |
| commit | 4cc70e933731ebf4309e1f1ce90973a0de04f28f (patch) | |
| tree | 254369a947f01aa34c7c5e1e766ded66919d7b4f /block.c | |
| parent | 5b43dbb699599cdb9f75a624cb28d4f709ad2cdf (diff) | |
| download | focaccia-qemu-4cc70e933731ebf4309e1f1ce90973a0de04f28f.tar.gz focaccia-qemu-4cc70e933731ebf4309e1f1ce90973a0de04f28f.zip | |
blkdebug: add "remove_break" command
This adds "remove_break" command which is the reverse of blkdebug command "break": it removes all breakpoints with given tag and resumes all the requests. Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'block.c')
| -rw-r--r-- | block.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/block.c b/block.c index 765bbae41a..faa52d4750 100644 --- a/block.c +++ b/block.c @@ -3525,6 +3525,19 @@ int bdrv_debug_breakpoint(BlockDriverState *bs, const char *event, return -ENOTSUP; } +int bdrv_debug_remove_breakpoint(BlockDriverState *bs, const char *tag) +{ + while (bs && bs->drv && !bs->drv->bdrv_debug_remove_breakpoint) { + bs = bs->file; + } + + if (bs && bs->drv && bs->drv->bdrv_debug_remove_breakpoint) { + return bs->drv->bdrv_debug_remove_breakpoint(bs, tag); + } + + return -ENOTSUP; +} + int bdrv_debug_resume(BlockDriverState *bs, const char *tag) { while (bs && bs->drv && !bs->drv->bdrv_debug_resume) { |