===================================================================
@@ -85,8 +85,8 @@ int do_migrate(Monitor *mon, const QDict
int inc = qdict_get_try_bool(qdict, "inc", 0);
const char *uri = qdict_get_str(qdict, "uri");
- if (current_migration &&
- current_migration->get_status(current_migration) == MIG_STATE_ACTIVE) {
+
+ if (migration_active()) {
monitor_printf(mon, "migration already in progress\n");
return -1;
}
@@ -480,3 +480,13 @@ int get_migration_state(void)
return MIG_STATE_ERROR;
}
}
+
+bool migration_active(void)
+{
+ if (current_migration &&
+ current_migration->get_status(current_migration) == MIG_STATE_ACTIVE) {
+ return true;
+ }
+
+ return false;
+}
===================================================================
@@ -148,4 +148,6 @@ int ram_load(QEMUFile *f, void *opaque,
extern int incoming_expected;
+bool migration_active(void);
+
#endif
To query whether migration is active. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>