diff options
author | Peter Krempa <pkrempa@redhat.com> | 2021-02-12 18:34:24 +0100 |
---|---|---|
committer | Eric Blake <eblake@redhat.com> | 2021-02-12 15:24:36 -0600 |
commit | 6e9f21a2aa8a78bc9a512a836a40c79fe50dd2b4 (patch) | |
tree | 749863cda552af19233d6556c32469310713c565 /qapi | |
parent | 0d1e450c7b3117ee635a00c81d9a92666ebc7ffa (diff) |
migration: dirty-bitmap: Allow control of bitmap persistence
Bitmap's source persistence is transported over the migration stream and
the destination mirrors it. In some cases the destination might want to
persist bitmaps which are not persistent on the source (e.g. the result
of merging bitmaps from a number of layers on the source when migrating
into a squashed image) but currently it would need to create another set
of persistent bitmaps and merge them.
This patch adds a 'transform' property to the alias map which allows
overriding the persistence of migrated bitmaps both on the source and
destination sides.
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Message-Id: <b20afb675917b86f6359ac3591166ac6d4233573.1613150869.git.pkrempa@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
[eblake: grammar tweaks, drop dead conditional]
Signed-off-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'qapi')
-rw-r--r-- | qapi/migration.json | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/qapi/migration.json b/qapi/migration.json index ce14d78071..6e5943fbb4 100644 --- a/qapi/migration.json +++ b/qapi/migration.json @@ -537,6 +537,19 @@ { 'name': 'zstd', 'if': 'defined(CONFIG_ZSTD)' } ] } ## +# @BitmapMigrationBitmapAliasTransform: +# +# @persistent: If present, the bitmap will be made persistent +# or transient depending on this parameter. +# +# Since: 6.0 +## +{ 'struct': 'BitmapMigrationBitmapAliasTransform', + 'data': { + '*persistent': 'bool' + } } + +## # @BitmapMigrationBitmapAlias: # # @name: The name of the bitmap. @@ -544,12 +557,16 @@ # @alias: An alias name for migration (for example the bitmap name on # the opposite site). # +# @transform: Allows the modification of the migrated bitmap. +# (since 6.0) +# # Since: 5.2 ## { 'struct': 'BitmapMigrationBitmapAlias', 'data': { 'name': 'str', - 'alias': 'str' + 'alias': 'str', + '*transform': 'BitmapMigrationBitmapAliasTransform' } } ## |