This fixes deadlocks when draining a BlockBackend in an iothread that receives new requests at the same time.
v2: - Rework the whole thing so that direct callers of blk_co_*() aren't broken after the series [Max] Kevin Wolf (3): block-backend: Reorder flush/pdiscard function definitions block: Increase BB.in_flight for coroutine interfaces block: Fix blk->in_flight during blk_wait_while_drained() include/sysemu/block-backend.h | 1 - block/block-backend.c | 199 +++++++++++++++++++++------------ 2 files changed, 125 insertions(+), 75 deletions(-) -- 2.20.1
