Add a new field. For now it is meaningless. Will be used in future patches.
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsement...@virtuozzo.com> Signed-off-by: Denis V. Lunev <d...@openvz.org> --- block/dirty-bitmap.c | 14 ++++++++++++++ include/block/dirty-bitmap.h | 2 ++ 2 files changed, 16 insertions(+) diff --git a/block/dirty-bitmap.c b/block/dirty-bitmap.c index 90ac794..bd802ac 100644 --- a/block/dirty-bitmap.c +++ b/block/dirty-bitmap.c @@ -45,6 +45,7 @@ struct BdrvDirtyBitmap { bool disabled; /* Bitmap is read-only */ int active_iterators; /* How many iterators are active */ bool persistent; /* bitmap must be saved to owner disk image */ + bool autoload; /* bitmap must be autoloaded on image opening */ QLIST_ENTRY(BdrvDirtyBitmap) list; }; @@ -73,6 +74,7 @@ void bdrv_dirty_bitmap_make_anon(BdrvDirtyBitmap *bitmap) bitmap->name = NULL; bitmap->persistent = false; + bitmap->autoload = false; } BdrvDirtyBitmap *bdrv_create_dirty_bitmap(BlockDriverState *bs, @@ -243,6 +245,8 @@ BdrvDirtyBitmap *bdrv_dirty_bitmap_abdicate(BlockDriverState *bs, bitmap->successor = NULL; successor->persistent = bitmap->persistent; bitmap->persistent = false; + successor->autoload = bitmap->autoload; + bitmap->autoload = false; bdrv_release_dirty_bitmap(bs, bitmap); return successor; @@ -579,6 +583,16 @@ void bdrv_dirty_bitmap_set_persistance(BdrvDirtyBitmap *bitmap, bitmap->persistent = persistent; } +void bdrv_dirty_bitmap_set_autoload(BdrvDirtyBitmap *bitmap, bool autoload) +{ + bitmap->autoload = autoload; +} + +bool bdrv_dirty_bitmap_get_autoload(const BdrvDirtyBitmap *bitmap) +{ + return bitmap->autoload; +} + void bdrv_finalize_persistent_dirty_bitmaps(BlockDriverState *bs) { BdrvDirtyBitmap *bm, *bm_next; diff --git a/include/block/dirty-bitmap.h b/include/block/dirty-bitmap.h index 1af3890..f5c2e3d 100644 --- a/include/block/dirty-bitmap.h +++ b/include/block/dirty-bitmap.h @@ -78,6 +78,8 @@ void bdrv_dirty_bitmap_deserialize_finish(BdrvDirtyBitmap *bitmap); bool bdrv_load_check_dirty_bitmap(BlockDriverState *file, const char *name); void bdrv_dirty_bitmap_set_persistance(BdrvDirtyBitmap *bitmap, bool persistent); +void bdrv_dirty_bitmap_set_autoload(BdrvDirtyBitmap *bitmap, bool autoload); +bool bdrv_dirty_bitmap_get_autoload(const BdrvDirtyBitmap *bitmap); void bdrv_store_dirty_bitmap(BlockDriverState *bs, BdrvDirtyBitmap *bitmap, Error **errp); void bdrv_finalize_persistent_dirty_bitmaps(BlockDriverState *bs); -- 1.8.3.1