diff options
author | Peter Maydell | 2018-09-28 18:07:23 +0200 |
---|---|---|
committer | Peter Maydell | 2018-09-28 18:07:23 +0200 |
commit | 042938f46e1c477419d1931381fdadffaa49d45e (patch) | |
tree | a92e216fd64e4a2b014b6d8da34e3ae2a20e8bcc /migration/savevm.c | |
parent | Merge remote-tracking branch 'remotes/otubo/tags/pull-seccomp-20180926' into ... (diff) | |
parent | migration/ram.c: Avoid taking address of fields in packed MultiFDInit_t struct (diff) | |
download | qemu-042938f46e1c477419d1931381fdadffaa49d45e.tar.gz qemu-042938f46e1c477419d1931381fdadffaa49d45e.tar.xz qemu-042938f46e1c477419d1931381fdadffaa49d45e.zip |
Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20180926a' into staging
Migration pull 2018-09-26
This supercedes Juan's pull from the 13th
# gpg: Signature made Wed 26 Sep 2018 18:07:30 BST
# gpg: using RSA key 0516331EBC5BFDE7
# gpg: Good signature from "Dr. David Alan Gilbert (RH2) <dgilbert@redhat.com>"
# Primary key fingerprint: 45F5 C71B 4A0C B7FB 977A 9FA9 0516 331E BC5B FDE7
* remotes/dgilbert/tags/pull-migration-20180926a:
migration/ram.c: Avoid taking address of fields in packed MultiFDInit_t struct
migration: fix the compression code
migration: fix QEMUFile leak
tests/migration: Speed up the test on ppc64
migration: cleanup in error paths in loadvm
migration/postcopy: Clear have_listen_thread
tests/migration: Add migration-test header file
tests/migration: Support cross compilation in generating boot header file
tests/migration: Convert x86 boot block compilation script into Makefile
migration: use save_page_use_compression in flush_compressed_data
migration: show the statistics of compression
migration: do not flush_compressed_data at the end of iteration
Add a hint message to loadvm and exits on failure
migration: handle the error condition properly
migration: fix calculating xbzrle_counters.cache_miss_rate
migration/rdma: Fix uninitialised rdma_return_path
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'migration/savevm.c')
-rw-r--r-- | migration/savevm.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/migration/savevm.c b/migration/savevm.c index 13e51f0e34..2d10e45582 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -1679,6 +1679,7 @@ static void *postcopy_ram_listen_thread(void *opaque) qemu_loadvm_state_cleanup(); rcu_unregister_thread(); + mis->have_listen_thread = false; return NULL; } @@ -2078,7 +2079,9 @@ qemu_loadvm_section_start_full(QEMUFile *f, MigrationIncomingState *mis) /* Find savevm section */ se = find_se(idstr, instance_id); if (se == NULL) { - error_report("Unknown savevm section or instance '%s' %d", + error_report("Unknown savevm section or instance '%s' %d. " + "Make sure that your current VM setup matches your " + "saved VM setup, including any hotplugged devices", idstr, instance_id); return -EINVAL; } @@ -2330,11 +2333,13 @@ int qemu_loadvm_state(QEMUFile *f) if (migrate_get_current()->send_configuration) { if (qemu_get_byte(f) != QEMU_VM_CONFIGURATION) { error_report("Configuration section missing"); + qemu_loadvm_state_cleanup(); return -EINVAL; } ret = vmstate_load_state(f, &vmstate_configuration, &savevm_state, 0); if (ret) { + qemu_loadvm_state_cleanup(); return ret; } } |