Message ID | 20190226053434.6252-4-chen.zhang@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Migration/colo.c: Fix upstream bugs when occur failover | expand |
* Zhang Chen (chen.zhang@intel.com) wrote: > From: Zhang Chen <chen.zhang@intel.com> > > Delay to close COLO for auto start VM after failover. > > Signed-off-by: Zhang Chen <chen.zhang@intel.com> Yes, I guess the state sent over the global state is probably RUN_STATE_COLO so it doesn't autostart on new machine types, and this looks like it would fix it. Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> > --- > migration/colo.c | 1 - > migration/migration.c | 3 +++ > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/migration/colo.c b/migration/colo.c > index a13acac192..89325952c7 100644 > --- a/migration/colo.c > +++ b/migration/colo.c > @@ -875,7 +875,6 @@ out: > qemu_fclose(mis->to_src_file); > mis->to_src_file = NULL; > } > - migration_incoming_disable_colo(); > > rcu_unregister_thread(); > return NULL; > diff --git a/migration/migration.c b/migration/migration.c > index 37e06b76dc..cec5f529c3 100644 > --- a/migration/migration.c > +++ b/migration/migration.c > @@ -383,6 +383,9 @@ static void process_incoming_migration_bh(void *opaque) > } else { > runstate_set(RUN_STATE_PAUSED); > } > + } else if (migration_incoming_colo_enabled()) { > + migration_incoming_disable_colo(); > + vm_start(); > } else { > runstate_set(global_state_get_runstate()); > } > -- > 2.17.GIT > -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
diff --git a/migration/colo.c b/migration/colo.c index a13acac192..89325952c7 100644 --- a/migration/colo.c +++ b/migration/colo.c @@ -875,7 +875,6 @@ out: qemu_fclose(mis->to_src_file); mis->to_src_file = NULL; } - migration_incoming_disable_colo(); rcu_unregister_thread(); return NULL; diff --git a/migration/migration.c b/migration/migration.c index 37e06b76dc..cec5f529c3 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -383,6 +383,9 @@ static void process_incoming_migration_bh(void *opaque) } else { runstate_set(RUN_STATE_PAUSED); } + } else if (migration_incoming_colo_enabled()) { + migration_incoming_disable_colo(); + vm_start(); } else { runstate_set(global_state_get_runstate()); }