[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH v21 16/30] block: bdrv_close: release bitmaps after
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
[Qemu-block] [PATCH v21 16/30] block: bdrv_close: release bitmaps after drv->bdrv_close |
Date: |
Tue, 13 Jun 2017 17:03:44 +0300 |
Release bitmaps after 'if (bs->drv) { ... }' block. This will allow
format driver to save persistent bitmaps, which will appear in following
commits.
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
---
block.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/block.c b/block.c
index 1b8b03b811..2c760466a9 100644
--- a/block.c
+++ b/block.c
@@ -3017,9 +3017,6 @@ static void bdrv_close(BlockDriverState *bs)
bdrv_flush(bs);
bdrv_drain(bs); /* in case flush left pending I/O */
- bdrv_release_named_dirty_bitmaps(bs);
- assert(QLIST_EMPTY(&bs->dirty_bitmaps));
-
if (bs->drv) {
BdrvChild *child, *next;
@@ -3058,6 +3055,9 @@ static void bdrv_close(BlockDriverState *bs)
bs->full_open_options = NULL;
}
+ bdrv_release_named_dirty_bitmaps(bs);
+ assert(QLIST_EMPTY(&bs->dirty_bitmaps));
+
QLIST_FOREACH_SAFE(ban, &bs->aio_notifiers, list, ban_next) {
g_free(ban);
}
--
2.11.1
- [Qemu-block] [PATCH v21 13/30] block: new bdrv_reopen_bitmaps_rw interface, (continued)
- [Qemu-block] [PATCH v21 13/30] block: new bdrv_reopen_bitmaps_rw interface, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 21/30] block: add bdrv_can_store_new_dirty_bitmap, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 26/30] iotests: test qcow2 persistent dirty bitmap, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 06/30] block/dirty-bitmap: add deserialize_ones func, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 01/30] specs/qcow2: fix bitmap granularity qemu-specific note, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 07/30] qcow2-refcount: rename inc_refcounts() and make it public, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 23/30] qmp: add persistent flag to block-dirty-bitmap-add, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 05/30] block: fix bdrv_dirty_bitmap_granularity signature, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 28/30] qcow2: add .bdrv_remove_persistent_dirty_bitmap, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 16/30] block: bdrv_close: release bitmaps after drv->bdrv_close,
Vladimir Sementsov-Ogievskiy <=
- [Qemu-block] [PATCH v21 22/30] qcow2: add .bdrv_can_store_new_dirty_bitmap, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 29/30] qmp: block-dirty-bitmap-remove: remove persistent, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 11/30] qcow2: autoloading dirty bitmaps, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 24/30] qmp: add autoload parameter to block-dirty-bitmap-add, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 04/30] tests: add hbitmap iter test, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 17/30] block: introduce persistent dirty bitmaps, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 18/30] block/dirty-bitmap: add bdrv_dirty_bitmap_next(), Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 08/30] qcow2: add bitmaps extension, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 25/30] qmp: add x-debug-block-dirty-bitmap-sha256, Vladimir Sementsov-Ogievskiy, 2017/06/13
- [Qemu-block] [PATCH v21 30/30] block: release persistent bitmaps on inactivate, Vladimir Sementsov-Ogievskiy, 2017/06/13