[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [External] Re: [PATCH v3 01/20] multifd: Add capability to enable/di
|
From: |
Hao Xiang |
|
Subject: |
Re: [External] Re: [PATCH v3 01/20] multifd: Add capability to enable/disable zero_page |
|
Date: |
Wed, 10 Jan 2024 21:47:08 -0800 |
On Mon, Jan 8, 2024 at 12:39 PM Fabiano Rosas <farosas@suse.de> wrote:
>
> Hao Xiang <hao.xiang@bytedance.com> writes:
>
> > From: Juan Quintela <quintela@redhat.com>
> >
> > We have to enable it by default until we introduce the new code.
> >
> > Signed-off-by: Juan Quintela <quintela@redhat.com>
> > ---
> > migration/options.c | 15 +++++++++++++++
> > migration/options.h | 1 +
> > qapi/migration.json | 8 +++++++-
> > 3 files changed, 23 insertions(+), 1 deletion(-)
> >
> > diff --git a/migration/options.c b/migration/options.c
> > index 8d8ec73ad9..0f6bd78b9f 100644
> > --- a/migration/options.c
> > +++ b/migration/options.c
> > @@ -204,6 +204,8 @@ Property migration_properties[] = {
> > DEFINE_PROP_MIG_CAP("x-switchover-ack",
> > MIGRATION_CAPABILITY_SWITCHOVER_ACK),
> > DEFINE_PROP_MIG_CAP("x-dirty-limit", MIGRATION_CAPABILITY_DIRTY_LIMIT),
> > + DEFINE_PROP_MIG_CAP("main-zero-page",
> > + MIGRATION_CAPABILITY_MAIN_ZERO_PAGE),
> > DEFINE_PROP_END_OF_LIST(),
> > };
> >
> > @@ -284,6 +286,19 @@ bool migrate_multifd(void)
> > return s->capabilities[MIGRATION_CAPABILITY_MULTIFD];
> > }
> >
> > +bool migrate_use_main_zero_page(void)
> > +{
> > + /* MigrationState *s; */
> > +
> > + /* s = migrate_get_current(); */
> > +
> > + /*
> > + * We will enable this when we add the right code.
> > + * return s->enabled_capabilities[MIGRATION_CAPABILITY_MAIN_ZERO_PAGE];
> > + */
> > + return true;
> > +}
> > +
> > bool migrate_pause_before_switchover(void)
> > {
> > MigrationState *s = migrate_get_current();
> > diff --git a/migration/options.h b/migration/options.h
> > index 246c160aee..c901eb57c6 100644
> > --- a/migration/options.h
> > +++ b/migration/options.h
> > @@ -88,6 +88,7 @@ int migrate_multifd_channels(void);
> > MultiFDCompression migrate_multifd_compression(void);
> > int migrate_multifd_zlib_level(void);
> > int migrate_multifd_zstd_level(void);
> > +bool migrate_use_main_zero_page(void);
> > uint8_t migrate_throttle_trigger_threshold(void);
> > const char *migrate_tls_authz(void);
> > const char *migrate_tls_creds(void);
> > diff --git a/qapi/migration.json b/qapi/migration.json
> > index eb2f883513..80c4b13516 100644
> > --- a/qapi/migration.json
> > +++ b/qapi/migration.json
> > @@ -531,6 +531,12 @@
> > # and can result in more stable read performance. Requires KVM
> > # with accelerator property "dirty-ring-size" set. (Since 8.1)
> > #
> > +#
> > +# @main-zero-page: If enabled, the detection of zero pages will be
> > +# done on the main thread. Otherwise it is done on
> > +# the multifd threads.
> > +# (since 8.2)
> > +#
> > # Features:
> > #
> > # @deprecated: Member @block is deprecated. Use blockdev-mirror with
> > @@ -555,7 +561,7 @@
> > { 'name': 'x-ignore-shared', 'features': [ 'unstable' ] },
> > 'validate-uuid', 'background-snapshot',
> > 'zero-copy-send', 'postcopy-preempt', 'switchover-ack',
> > - 'dirty-limit'] }
> > + 'dirty-limit', 'main-zero-page'] }
> >
> > ##
> > # @MigrationCapabilityStatus:
>
> I'll extract this zero page work into a separate series and submit for
> review soon. I want to get people's opinion on it independently of this
> series.
Sounds good. Thanks.
[PATCH v3 04/20] So we use multifd to transmit zero pages., Hao Xiang, 2024/01/03
[PATCH v3 08/20] util/dsa: Implement DSA task enqueue and dequeue., Hao Xiang, 2024/01/03
[PATCH v3 02/20] multifd: Support for zero pages transmission, Hao Xiang, 2024/01/03
[PATCH v3 16/20] migration/multifd: Enable set normal page ratio test hook in multifd., Hao Xiang, 2024/01/03
[PATCH v3 03/20] multifd: Zero pages transmission, Hao Xiang, 2024/01/03