aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Wolf <kwolf@redhat.com>2017-12-06 10:45:27 +0100
committerKevin Wolf <kwolf@redhat.com>2017-12-22 15:03:41 +0100
commit5280aa32e140a262bbc6e8e06fd4abb137900016 (patch)
tree9938d3851026f2ab7222a852b6d54afb039c3574
parent99c05de9180ae100fcabd5ed02d32b392dc1528c (diff)
downloadqemu-5280aa32e140a262bbc6e8e06fd4abb137900016.zip
qemu-5280aa32e140a262bbc6e8e06fd4abb137900016.tar.gz
qemu-5280aa32e140a262bbc6e8e06fd4abb137900016.tar.bz2
block: Don't wait for requests in bdrv_drain*_end()
The device is drained, so there is no point in waiting for requests at the end of the drained section. Remove the bdrv_drain_recurse() calls there. The bdrv_drain_recurse() calls were introduced in commit 481cad48e5e in order to call the .bdrv_co_drain_end() driver callback. This is now done by a separate bdrv_drain_invoke() call. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r--block/io.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/block/io.c b/block/io.c
index 390d463..5fdb92a 100644
--- a/block/io.c
+++ b/block/io.c
@@ -299,7 +299,6 @@ void bdrv_drained_end(BlockDriverState *bs)
bdrv_parent_drained_end(bs);
bdrv_drain_invoke(bs, false);
- bdrv_drain_recurse(bs);
aio_enable_external(bdrv_get_aio_context(bs));
}
@@ -400,7 +399,6 @@ void bdrv_drain_all_end(void)
aio_enable_external(aio_context);
bdrv_parent_drained_end(bs);
bdrv_drain_invoke(bs, false);
- bdrv_drain_recurse(bs);
aio_context_release(aio_context);
}