[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 2/3] migration: dirty-bitmap: Allow control of bitmap pers
From: |
Eric Blake |
Subject: |
Re: [PATCH v3 2/3] migration: dirty-bitmap: Allow control of bitmap persistence |
Date: |
Fri, 12 Feb 2021 12:49:45 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 |
On 2/12/21 11:34 AM, Peter Krempa wrote:
> 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 merge of bitmaps from a number of layers on the source when migrating
Sorry for not proposing this grammar tweak earlier, but
s/merge of/merging/
> 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 to
> override the persistence of migrated bitmaps both on the source and
Once again, we encounter the non-idiomatic "allows to ${VERB}"; the
easiest solutions are "allows ${SUBJECT} to ${VERB}" or "allows
${VERB}ing". I'll go with the latter.
> destination sides.
>
> Signed-off-by: Peter Krempa <pkrempa@redhat.com>
> ---
> migration/block-dirty-bitmap.c | 30 +++++++++++++++++++++++++++---
> qapi/migration.json | 19 ++++++++++++++++++-
> 2 files changed, 45 insertions(+), 4 deletions(-)
>
> @@ -806,7 +819,16 @@ static int dirty_bitmap_load_start(QEMUFile *f,
> DBMLoadState *s)
> return -EINVAL;
> }
>
> - if (flags & DIRTY_BITMAP_MIG_START_FLAG_PERSISTENT) {
> + if (s->bmap_inner &&
> + s->bmap_inner->has_transform &&
> + s->bmap_inner->transform &&
This leg of the conjunction is always true (if has_transform is set,
transform is necessarily non-NULL).
> + s->bmap_inner->transform->has_persistent) {
> + persistent = s->bmap_inner->transform->persistent;
> + } else {
> + persistent = flags & DIRTY_BITMAP_MIG_START_FLAG_PERSISTENT;
> + }
> +
> + if (persistent) {
> bdrv_dirty_bitmap_set_persistence(s->bitmap, true);
> }
>
> @@ -544,12 +557,16 @@
> # @alias: An alias name for migration (for example the bitmap name on
> # the opposite site).
> #
> +# @transform: Allows to modify properties of the migrated bitmap.
Allows the modification of
I can make those tweaks while queuing.
Reviewed-by: Eric Blake <eblake@redhat.com>
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
- [PATCH v3 0/3] migration: dirty-bitmap: Allow control of bitmap persistence, Peter Krempa, 2021/02/12
- [PATCH v3 1/3] migration: dirty-bitmap: Convert alias map inner members to BitmapMigrationBitmapAlias, Peter Krempa, 2021/02/12
- [PATCH v3 2/3] migration: dirty-bitmap: Allow control of bitmap persistence, Peter Krempa, 2021/02/12
- Re: [PATCH v3 2/3] migration: dirty-bitmap: Allow control of bitmap persistence,
Eric Blake <=
- [PATCH v3 3/3] qemu-iotests: 300: Add test case for modifying persistence of bitmap, Peter Krempa, 2021/02/12
- Re: [PATCH v3 0/3] migration: dirty-bitmap: Allow control of bitmap persistence, no-reply, 2021/02/12
- Re: [PATCH v3 0/3] migration: dirty-bitmap: Allow control of bitmap persistence, Eric Blake, 2021/02/12