From: "Denis V. Lunev" <d...@openvz.org> since commit commit 94f5a43704129ca4995aa3385303c5ae225bde42 Author: Liang Li <liang.z...@intel.com> Date: Mon Nov 2 15:37:00 2015 +0800
migration: defer migration_end & blk_mig_cleanup when actual .cleanup callbacks calling was removed from complete operations. The patch fixes regression introduced by the commit above results in 100% reliable assert for virtio-scsi VM with iothreads enabled during 'virsh create-snapshot' operation: assert(i != mr->ioeventfd_nb); memory_region_del_eventfd virtio_pci_set_host_notifier_internal virtio_pci_set_host_notifier virtio_scsi_dataplane_start virtio_scsi_handle_cmd virtio_queue_notify_vq virtio_queue_host_notifier_read aio_dispatch Signed-off-by: Denis V. Lunev <d...@openvz.org> Reviewed-by: Liang Li <liang.z...@intel.com> Reviewed-by: Juan Quintela <quint...@redhat.com> CC: Paolo Bonzini <pbonz...@redhat.com> CC: Juan Quintela <quint...@redhat.com> CC: Amit Shah <amit.s...@redhat.com> Signed-off-by: Juan Quintela <quint...@redhat.com> --- migration/savevm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migration/savevm.c b/migration/savevm.c index e5c8482..fad34b8 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -1179,8 +1179,8 @@ static int qemu_savevm_state(QEMUFile *f, Error **errp) qemu_savevm_state_complete_precopy(f); ret = qemu_file_get_error(f); } + qemu_savevm_state_cleanup(); if (ret != 0) { - qemu_savevm_state_cleanup(); error_setg_errno(errp, -ret, "Error while writing VM state"); } return ret; -- 2.5.0