diff options
author | Kevin Wolf <kwolf@redhat.com> | 2022-11-18 18:41:09 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2022-12-15 16:07:42 +0100 |
commit | 23987471285a26397e3152a9244b652445fd36c4 (patch) | |
tree | 3bd25b2983799cf8659f7e8555ff57805dfed7fc /block/io.c | |
parent | 05c272ff0cf1b16cc3606f746182dd99b774f553 (diff) | |
download | qemu-23987471285a26397e3152a9244b652445fd36c4.zip qemu-23987471285a26397e3152a9244b652445fd36c4.tar.gz qemu-23987471285a26397e3152a9244b652445fd36c4.tar.bz2 |
block: Don't poll in bdrv_replace_child_noperm()
In order to make sure that bdrv_replace_child_noperm() doesn't have to
poll any more, get rid of the bdrv_parent_drained_begin_single() call.
This is possible now because we can require that the parent is already
drained through the child in question when the function is called and we
don't call the parent drain callbacks more than once.
The additional drain calls needed in callers cause the test case to run
its code in the drain handler too early (bdrv_attach_child() drains
now), so modify it to only enable the code after the test setup has
completed.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-Id: <20221118174110.55183-15-kwolf@redhat.com>
Reviewed-by: Hanna Reitz <hreitz@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block/io.c')
-rw-r--r-- | block/io.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -81,7 +81,7 @@ static void bdrv_parent_drained_end(BlockDriverState *bs, BdrvChild *ignore) } } -static bool bdrv_parent_drained_poll_single(BdrvChild *c) +bool bdrv_parent_drained_poll_single(BdrvChild *c) { if (c->klass->drained_poll) { return c->klass->drained_poll(c); |