diff options
Diffstat (limited to 'block/io.c')
-rw-r--r-- | block/io.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/block/io.c b/block/io.c index 6fc0145864..be0d862ca6 100644 --- a/block/io.c +++ b/block/io.c @@ -474,9 +474,21 @@ void bdrv_inc_in_flight(BlockDriverState *bs) atomic_inc(&bs->in_flight); } +static void dummy_bh_cb(void *opaque) +{ +} + +void bdrv_wakeup(BlockDriverState *bs) +{ + if (bs->wakeup) { + aio_bh_schedule_oneshot(qemu_get_aio_context(), dummy_bh_cb, NULL); + } +} + void bdrv_dec_in_flight(BlockDriverState *bs) { atomic_dec(&bs->in_flight); + bdrv_wakeup(bs); } static bool coroutine_fn wait_serialising_requests(BdrvTrackedRequest *self) |