summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2012-10-19 16:45:24 +0200
committerLuiz Capitulino <lcapitulino@redhat.com>2012-10-24 11:27:33 -0200
commit29ed72f15a4c8fd3ac106d874f76cc27b654fd25 (patch)
tree6551a732b9cc37c5c442600cc230e3f29599877d
parent1e9981465f05a0f103d7e09afd975c9c0ff6d132 (diff)
downloadqemu-29ed72f15a4c8fd3ac106d874f76cc27b654fd25.tar.gz
migration: go to paused state after finishing incoming migration with -S
At the end of migration the machine has started already, and cannot be destroyed without losing the guest's data. Hence, prelaunch is the wrong state. Go to the paused state instead. QEMU would reach that state anyway (after running the guest for the blink of an eye) if the "stop" command had been received after the start of migration. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
-rw-r--r--migration.c2
-rw-r--r--vl.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/migration.c b/migration.c
index 62e030487d..e9a58228e9 100644
--- a/migration.c
+++ b/migration.c
@@ -102,7 +102,7 @@ void process_incoming_migration(QEMUFile *f)
if (autostart) {
vm_start();
} else {
- runstate_set(RUN_STATE_PRELAUNCH);
+ runstate_set(RUN_STATE_PAUSED);
}
}
diff --git a/vl.c b/vl.c
index ee3c43ae2f..188af45869 100644
--- a/vl.c
+++ b/vl.c
@@ -341,7 +341,7 @@ static const RunStateTransition runstate_transitions_def[] = {
{ RUN_STATE_DEBUG, RUN_STATE_RUNNING },
{ RUN_STATE_INMIGRATE, RUN_STATE_RUNNING },
- { RUN_STATE_INMIGRATE, RUN_STATE_PRELAUNCH },
+ { RUN_STATE_INMIGRATE, RUN_STATE_PAUSED },
{ RUN_STATE_INTERNAL_ERROR, RUN_STATE_PAUSED },
{ RUN_STATE_INTERNAL_ERROR, RUN_STATE_FINISH_MIGRATE },