}
}
-static bool bdrv_drain_recurse(BlockDriverState *bs, bool begin)
+static bool bdrv_drain_recurse(BlockDriverState *bs)
{
BdrvChild *child, *tmp;
bool waited;
*/
bdrv_ref(bs);
}
- waited |= bdrv_drain_recurse(bs, begin);
+ waited |= bdrv_drain_recurse(bs);
if (in_main_loop) {
bdrv_unref(bs);
}
}
bdrv_drain_invoke(bs, true);
- bdrv_drain_recurse(bs, true);
+ bdrv_drain_recurse(bs);
}
void bdrv_drained_end(BlockDriverState *bs)
bdrv_parent_drained_end(bs);
bdrv_drain_invoke(bs, false);
- bdrv_drain_recurse(bs, false);
+ bdrv_drain_recurse(bs);
aio_enable_external(bdrv_get_aio_context(bs));
}
aio_context_acquire(aio_context);
for (bs = bdrv_first(&it); bs; bs = bdrv_next(&it)) {
if (aio_context == bdrv_get_aio_context(bs)) {
- waited |= bdrv_drain_recurse(bs, true);
+ waited |= bdrv_drain_recurse(bs);
}
}
aio_context_release(aio_context);
aio_enable_external(aio_context);
bdrv_parent_drained_end(bs);
bdrv_drain_invoke(bs, false);
- bdrv_drain_recurse(bs, false);
+ bdrv_drain_recurse(bs);
aio_context_release(aio_context);
}