]> git.proxmox.com Git - mirror_qemu.git/commitdiff
migration/savevm: load_header before load_setup
authorWei Yang <richardw.yang@linux.intel.com>
Wed, 24 Apr 2019 00:46:59 +0000 (08:46 +0800)
committerDr. David Alan Gilbert <dgilbert@redhat.com>
Tue, 14 May 2019 16:33:35 +0000 (17:33 +0100)
In migration_thread() and qemu_savevm_state(), we savevm_state in
following sequence:

    qemu_savevm_state_header(f);
    qemu_savevm_state_setup(f);

Then it would be more proper to loadvm_state in the save sequence.

Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
Message-Id: <20190424004700.12766-4-richardw.yang@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
migration/savevm.c

index 6e8912af49f4fb10747ddebe31f0b71d3d9b8095..4c7b8379e89bd10c4ca8cce26c8fde0284d738cd 100644 (file)
@@ -2434,10 +2434,6 @@ int qemu_loadvm_state(QEMUFile *f)
         return -ENOTSUP;
     }
 
-    if (qemu_loadvm_state_setup(f) != 0) {
-        return -EINVAL;
-    }
-
     if (migrate_get_current()->send_configuration) {
         if (qemu_get_byte(f) != QEMU_VM_CONFIGURATION) {
             error_report("Configuration section missing");
@@ -2452,6 +2448,10 @@ int qemu_loadvm_state(QEMUFile *f)
         }
     }
 
+    if (qemu_loadvm_state_setup(f) != 0) {
+        return -EINVAL;
+    }
+
     cpu_synchronize_all_pre_loadvm();
 
     ret = qemu_loadvm_state_main(f, mis);