qemu-io: acquire AioContext

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
Message-Id: <1477565348-5458-16-git-send-email-pbonzini@redhat.com>
Signed-off-by: Fam Zheng <famz@redhat.com>
This commit is contained in:
Paolo Bonzini 2016-10-27 12:49:03 +02:00 committed by Fam Zheng
parent 720150f318
commit 15afd94a04
1 changed files with 4 additions and 0 deletions

View File

@ -2216,6 +2216,7 @@ static const cmdinfo_t help_cmd = {
bool qemuio_command(BlockBackend *blk, const char *cmd) bool qemuio_command(BlockBackend *blk, const char *cmd)
{ {
AioContext *ctx;
char *input; char *input;
const cmdinfo_t *ct; const cmdinfo_t *ct;
char **v; char **v;
@ -2227,7 +2228,10 @@ bool qemuio_command(BlockBackend *blk, const char *cmd)
if (c) { if (c) {
ct = find_command(v[0]); ct = find_command(v[0]);
if (ct) { if (ct) {
ctx = blk ? blk_get_aio_context(blk) : qemu_get_aio_context();
aio_context_acquire(ctx);
done = command(blk, ct, c, v); done = command(blk, ct, c, v);
aio_context_release(ctx);
} else { } else {
fprintf(stderr, "command \"%s\" not found\n", v[0]); fprintf(stderr, "command \"%s\" not found\n", v[0]);
} }