aboutsummaryrefslogtreecommitdiff
path: root/migration/colo.c
diff options
context:
space:
mode:
authorZhang Chen <chen.zhang@intel.com>2019-03-22 18:13:32 +0800
committerJuan Quintela <quintela@redhat.com>2019-03-25 18:45:38 +0100
commit82cd368ccd0a962f1f141e0e529abc54d5ab504e (patch)
treee556d0fb2086a737509c6c56dd9282fa16b1c67e /migration/colo.c
parent3a43ac4757b70dfc2964c12ca1ac82f61128cc04 (diff)
Migration/colo.c: Add the necessary checks for colo_do_failover
Signed-off-by: Zhang Chen <chen.zhang@intel.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'migration/colo.c')
-rw-r--r--migration/colo.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/migration/colo.c b/migration/colo.c
index dbe2b88807..d1ae2e6d11 100644
--- a/migration/colo.c
+++ b/migration/colo.c
@@ -197,10 +197,16 @@ void colo_do_failover(MigrationState *s)
vm_stop_force_state(RUN_STATE_COLO);
}
- if (get_colo_mode() == COLO_MODE_PRIMARY) {
+ switch (get_colo_mode()) {
+ case COLO_MODE_PRIMARY:
primary_vm_do_failover();
- } else {
+ break;
+ case COLO_MODE_SECONDARY:
secondary_vm_do_failover();
+ break;
+ default:
+ error_report("colo_do_failover failed because the colo mode"
+ " could not be obtained");
}
}