From: Yoshiaki Tamura <tamura.yoshi...@lab.ntt.co.jp> When qemu on the receiver gets killed during live migration, if debug is turned on, migrate_fd_put_ready() says,
migration: done iterating and proceeds. The reason was qemu_savevm_state_iterate() returning 1 even when qemu file has error. This patch checks qemu_file_has_error() before returning 1/0, and avoids migrate_fd_put_ready() to proceed in case of error. Signed-off-by: Yoshiaki Tamura <tamura.yoshi...@lab.ntt.co.jp> Signed-off-by: Juan Quintela <quint...@redhat.com> --- savevm.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/savevm.c b/savevm.c index a50fd31..1a0be58 100644 --- a/savevm.c +++ b/savevm.c @@ -1501,14 +1501,15 @@ int qemu_savevm_state_iterate(Monitor *mon, QEMUFile *f) } } - if (ret) - return 1; - if (qemu_file_has_error(f)) { qemu_savevm_state_cancel(mon, f); return -EIO; } + if (ret) { + return 1; + } + return 0; } -- 1.7.4