* Zhimin Feng (fengzhim...@huawei.com) wrote: > From: fengzhimin <fengzhim...@huawei.com> > > Signed-off-by: fengzhimin <fengzhim...@huawei.com>
Instead of creating x-multirdma as a capability and the corresponding parameter for the number of channels; it would be better just to use the multifd parameters when used with an rdma transport; as far as I know multifd doesn't work with rdma at the moment, and to the user the idea of multifd over rdma is just the same thing. Dave > --- > migration/migration.c | 11 +++++++++++ > migration/migration.h | 1 + > qapi/migration.json | 4 +++- > 3 files changed, 15 insertions(+), 1 deletion(-) > > diff --git a/migration/migration.c b/migration/migration.c > index 354ad072fa..e98e236ef9 100644 > --- a/migration/migration.c > +++ b/migration/migration.c > @@ -2176,6 +2176,15 @@ bool migrate_use_events(void) > return s->enabled_capabilities[MIGRATION_CAPABILITY_EVENTS]; > } > > +bool migrate_use_multiRDMA(void) > +{ > + MigrationState *s; > + > + s = migrate_get_current(); > + > + return s->enabled_capabilities[MIGRATION_CAPABILITY_MULTIRDMA]; > +} > + > bool migrate_use_multifd(void) > { > MigrationState *s; > @@ -3509,6 +3518,8 @@ static Property migration_properties[] = { > DEFINE_PROP_MIG_CAP("x-block", MIGRATION_CAPABILITY_BLOCK), > DEFINE_PROP_MIG_CAP("x-return-path", MIGRATION_CAPABILITY_RETURN_PATH), > DEFINE_PROP_MIG_CAP("x-multifd", MIGRATION_CAPABILITY_MULTIFD), > + DEFINE_PROP_MIG_CAP("x-multirdma", > + MIGRATION_CAPABILITY_MULTIRDMA), > > DEFINE_PROP_END_OF_LIST(), > }; > diff --git a/migration/migration.h b/migration/migration.h > index 79b3dda146..bb488028a6 100644 > --- a/migration/migration.h > +++ b/migration/migration.h > @@ -296,6 +296,7 @@ bool migrate_ignore_shared(void); > bool migrate_validate_uuid(void); > > bool migrate_auto_converge(void); > +bool migrate_use_multiRDMA(void); > bool migrate_use_multifd(void); > bool migrate_pause_before_switchover(void); > int migrate_multifd_channels(void); > diff --git a/qapi/migration.json b/qapi/migration.json > index b7348d0c8b..c995ffdc4c 100644 > --- a/qapi/migration.json > +++ b/qapi/migration.json > @@ -421,6 +421,8 @@ > # @validate-uuid: Send the UUID of the source to allow the destination > # to ensure it is the same. (since 4.2) > # > +# @multirdma: Use more than one channels for rdma migration. (since 4.2) > +# > # Since: 1.2 > ## > { 'enum': 'MigrationCapability', > @@ -428,7 +430,7 @@ > 'compress', 'events', 'postcopy-ram', 'x-colo', 'release-ram', > 'block', 'return-path', 'pause-before-switchover', 'multifd', > 'dirty-bitmaps', 'postcopy-blocktime', 'late-block-activate', > - 'x-ignore-shared', 'validate-uuid' ] } > + 'x-ignore-shared', 'validate-uuid', 'multirdma' ] } > > ## > # @MigrationCapabilityStatus: > -- > 2.19.1 > > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK