[3/3] Reset system before loadvm

Message ID 1308679048-4441-4-git-send-email-lcapitulino@redhat.com
State New
Headers show

Commit Message

Luiz Capitulino June 21, 2011, 5:57 p.m.
From: Jan Kiszka <jan.kiszka@siemens.com>

In case we load the vmstate during incoming migration, we start from a
clean, default machine state as we went through system reset before. But
if we load from a snapshot, the machine can be in any state. That can
cause troubles if loading an older image which does not carry all state
information the executing QEMU requires. Hardly any device takes care of
this scenario.

However, fixing this is trivial. We just need to issue a system reset
during loadvm as well.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
 savevm.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)


diff --git a/savevm.c b/savevm.c
index 939845c..8139bc7 100644
--- a/savevm.c
+++ b/savevm.c
@@ -2073,6 +2073,7 @@  int load_vmstate(const char *name)
         return -EINVAL;
+    qemu_system_reset(VMRESET_SILENT);
     ret = qemu_loadvm_state(f);