[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 3/4] io: add locking constraints check into bdrv_dra
From: |
Denis V. Lunev |
Subject: |
[Qemu-devel] [PATCH 3/4] io: add locking constraints check into bdrv_drain to ensure locking |
Date: |
Wed, 28 Oct 2015 18:01:04 +0300 |
as described in the comment of the function
Signed-off-by: Denis V. Lunev <address@hidden>
CC: Stefan Hajnoczi <address@hidden>
CC: Paolo Bonzini <address@hidden>
---
block/io.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/block/io.c b/block/io.c
index 5ac6256..2e98d45 100644
--- a/block/io.c
+++ b/block/io.c
@@ -247,12 +247,15 @@ bool bdrv_requests_pending(BlockDriverState *bs)
void bdrv_drain(BlockDriverState *bs)
{
bool busy = true;
+ AioContext *aio_context = bdrv_get_aio_context(bs);
+
+ assert(aio_context_is_locked(aio_context));
while (busy) {
/* Keep iterating */
bdrv_flush_io_queue(bs);
busy = bdrv_requests_pending(bs);
- busy |= aio_poll(bdrv_get_aio_context(bs), busy);
+ busy |= aio_poll(aio_context, busy);
}
}
--
2.1.4