diff options
author | Fam Zheng <famz@redhat.com> | 2016-07-13 13:09:47 +0800 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2016-07-21 20:44:19 +0300 |
commit | d4a92a8420ac764f21652322aa7d4e49cfcbc607 (patch) | |
tree | 8361ad0fac20fdcd94442cce98258a75378faf11 /block/mirror.c | |
parent | 1c627137c10ee2dcf59e0383ade8a9abfa2d4355 (diff) | |
download | qemu-d4a92a8420ac764f21652322aa7d4e49cfcbc607.tar.gz qemu-d4a92a8420ac764f21652322aa7d4e49cfcbc607.tar.bz2 qemu-d4a92a8420ac764f21652322aa7d4e49cfcbc607.zip |
Revert "mirror: Workaround for unexpected iohandler events during completion"
This reverts commit ab27c3b5e7408693dde0b565f050aa55c4a1bcef.
The virtio storage device host notifiers now work with
bdrv_drained_begin/end, so we don't need this hack any more.
Signed-off-by: Fam Zheng <famz@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'block/mirror.c')
-rw-r--r-- | block/mirror.c | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/block/mirror.c b/block/mirror.c index b1e633ecad..9ae11e5276 100644 --- a/block/mirror.c +++ b/block/mirror.c @@ -508,9 +508,6 @@ static void mirror_exit(BlockJob *job, void *opaque) block_job_completed(&s->common, data->ret); g_free(data); bdrv_drained_end(src); - if (qemu_get_aio_context() == bdrv_get_aio_context(src)) { - aio_enable_external(iohandler_get_aio_context()); - } bdrv_unref(src); } @@ -734,12 +731,6 @@ immediate_exit: /* Before we switch to target in mirror_exit, make sure data doesn't * change. */ bdrv_drained_begin(bs); - if (qemu_get_aio_context() == bdrv_get_aio_context(bs)) { - /* FIXME: virtio host notifiers run on iohandler_ctx, therefore the - * above bdrv_drained_end isn't enough to quiesce it. This is ugly, we - * need a block layer API change to achieve this. */ - aio_disable_external(iohandler_get_aio_context()); - } block_job_defer_to_main_loop(&s->common, mirror_exit, data); } |