Juan Quintela <quint...@redhat.com> writes: > We used to synchronize all channels at the end of each RAM section > sent. That is not needed, so preparing to only synchronize once every > full round in latests patches. > > Notice that we initialize the property as true. We will change the > default when we introduce the new mechanism. > > Signed-off-by: Juan Quintela <quint...@redhat.com> > Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com> > Signed-off-by: Juan Quintela <quint...@redhat.com> > > --- > > Rename each-iteration to after-each-section > > Signed-off-by: Juan Quintela <quint...@redhat.com> > ---
[...] > diff --git a/migration/migration.c b/migration/migration.c > index a5c22e327d..b2844d374f 100644 > --- a/migration/migration.c > +++ b/migration/migration.c > @@ -167,7 +167,8 @@ > INITIALIZE_MIGRATE_CAPS_SET(check_caps_background_snapshot, > MIGRATION_CAPABILITY_XBZRLE, > MIGRATION_CAPABILITY_X_COLO, > MIGRATION_CAPABILITY_VALIDATE_UUID, > - MIGRATION_CAPABILITY_ZERO_COPY_SEND); > + MIGRATION_CAPABILITY_ZERO_COPY_SEND, > + MIGRATION_CAPABILITY_MULTIFD_SYNC_AFTER_EACH_SECTION); > > /* When we add fault tolerance, we could have several > migrations at once. For now we don't need to add > @@ -2705,6 +2706,15 @@ bool migrate_use_multifd(void) > return s->enabled_capabilities[MIGRATION_CAPABILITY_MULTIFD]; > } > > +bool migrate_multifd_sync_after_each_section(void) > +{ > + MigrationState *s = migrate_get_current(); > + > + return true; > + // We will change this when code gets in. It seems the time for that would be right now, doesn't it? ;) > + return > s->enabled_capabilities[MIGRATION_CAPABILITY_MULTIFD_SYNC_AFTER_EACH_SECTION]; > +} > + > bool migrate_pause_before_switchover(void) > { > MigrationState *s; > @@ -4539,7 +4549,8 @@ static Property migration_properties[] = { > DEFINE_PROP_MIG_CAP("x-zero-copy-send", > MIGRATION_CAPABILITY_ZERO_COPY_SEND), > #endif > - > + DEFINE_PROP_MIG_CAP("multifd-sync-after-each-section", > + > MIGRATION_CAPABILITY_MULTIFD_SYNC_AFTER_EACH_SECTION), > DEFINE_PROP_END_OF_LIST(), > };