From 02edd2e7665bceb307bedd8afe625c0f7e8d7cfa Mon Sep 17 00:00:00 2001 From: Stefan Hajnoczi Date: Mon, 29 Jul 2013 15:01:58 +0200 Subject: [PATCH] migration: fix spice migration Commit 29ae8a4133082e16970c9d4be09f4b6a15034617 ("rdma: introduce MIG_STATE_NONE and change MIG_STATE_SETUP state transition") changed the state transitions during migration setup. Spice used to be notified with MIG_STATE_ACTIVE and it detected this using migration_is_active(). Spice is now notified with MIG_STATE_SETUP and migration_is_active() no longer works. Replace migration_is_active() with migration_in_setup() to fix spice migration. Cc: Michael R. Hines Reviewed-by: Kevin Wolf Signed-off-by: Stefan Hajnoczi --- include/migration/migration.h | 2 +- migration.c | 4 ++-- ui/spice-core.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/migration/migration.h b/include/migration/migration.h index 08c772d4dc..140e6b471c 100644 --- a/include/migration/migration.h +++ b/include/migration/migration.h @@ -90,7 +90,7 @@ int migrate_fd_close(MigrationState *s); void add_migration_state_change_notifier(Notifier *notify); void remove_migration_state_change_notifier(Notifier *notify); -bool migration_is_active(MigrationState *); +bool migration_in_setup(MigrationState *); bool migration_has_finished(MigrationState *); bool migration_has_failed(MigrationState *); MigrationState *migrate_get_current(void); diff --git a/migration.c b/migration.c index a5ed26b0ba..9fc72943fb 100644 --- a/migration.c +++ b/migration.c @@ -338,9 +338,9 @@ void remove_migration_state_change_notifier(Notifier *notify) notifier_remove(notify); } -bool migration_is_active(MigrationState *s) +bool migration_in_setup(MigrationState *s) { - return s->state == MIG_STATE_ACTIVE; + return s->state == MIG_STATE_SETUP; } bool migration_has_finished(MigrationState *s) diff --git a/ui/spice-core.c b/ui/spice-core.c index f308fd9d5e..033fd8925b 100644 --- a/ui/spice-core.c +++ b/ui/spice-core.c @@ -563,7 +563,7 @@ static void migration_state_notifier(Notifier *notifier, void *data) { MigrationState *s = data; - if (migration_is_active(s)) { + if (migration_in_setup(s)) { spice_server_migrate_start(spice_server); } else if (migration_has_finished(s)) { spice_server_migrate_end(spice_server, true);