Hi all! This is inspired by Kevin's "block: Fix blk->in_flight during blk_wait_while_drained()" series.
So, like it's now done for block-backends, let's expand in_flight-protected sections for bdrv_ interfaces, including coroutine_enter and BDRV_POLL_WHILE loop into these sections. Vladimir Sementsov-Ogievskiy (9): block/io: refactor bdrv_is_allocated_above to run only one coroutine block/io: refactor bdrv_co_ioctl: move aio stuff to corresponding block block/io: move flush and pdiscard stuff down block/io: move bdrv_rw_co_entry and friends down block/io: expand in_flight inc/dec section: simple cases block/io: expand in_flight inc/dec section: block-status block/io: add bdrv_do_pwrite_zeroes block/io: move bdrv_make_zero under block-status block/io: expand in_flight inc/dec section: bdrv_make_zero block/io.c | 780 +++++++++++++++++++++++++++++++++++------------------ 1 file changed, 516 insertions(+), 264 deletions(-) -- 2.21.0