mirror of https://github.com/xqemu/xqemu.git
migration: allow cancel to unpause
If a migration_cancel is issued during the new paused state, kick the pause_sem to get to unpause so it can cancel. Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
This commit is contained in:
parent
94ae12cba4
commit
a7b36b486d
|
@ -1114,6 +1114,10 @@ static void migrate_fd_cancel(MigrationState *s)
|
||||||
if (!migration_is_setup_or_active(old_state)) {
|
if (!migration_is_setup_or_active(old_state)) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
/* If the migration is paused, kick it out of the pause */
|
||||||
|
if (old_state == MIGRATION_STATUS_PRE_SWITCHOVER) {
|
||||||
|
qemu_sem_post(&s->pause_sem);
|
||||||
|
}
|
||||||
migrate_set_state(&s->state, old_state, MIGRATION_STATUS_CANCELLING);
|
migrate_set_state(&s->state, old_state, MIGRATION_STATUS_CANCELLING);
|
||||||
} while (s->state != MIGRATION_STATUS_CANCELLING);
|
} while (s->state != MIGRATION_STATUS_CANCELLING);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue