From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34953) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zw9tJ-0005PB-HR for qemu-devel@nongnu.org; Tue, 10 Nov 2015 09:27:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zw9tI-00015A-Nx for qemu-devel@nongnu.org; Tue, 10 Nov 2015 09:27:21 -0500 Received: from mx1.redhat.com ([209.132.183.28]:54105) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zw9tI-000153-Ie for qemu-devel@nongnu.org; Tue, 10 Nov 2015 09:27:20 -0500 From: Juan Quintela Date: Tue, 10 Nov 2015 15:25:46 +0100 Message-Id: <1447165546-27784-58-git-send-email-quintela@redhat.com> In-Reply-To: <1447165546-27784-1-git-send-email-quintela@redhat.com> References: <1447165546-27784-1-git-send-email-quintela@redhat.com> Subject: [Qemu-devel] [PULL 57/57] migration: qemu_savevm_state_cleanup becomes mandatory operation List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: amit.shah@redhat.com, "Denis V. Lunev" , dgilbert@redhat.com, Paolo Bonzini From: "Denis V. Lunev" since commit commit 94f5a43704129ca4995aa3385303c5ae225bde42 Author: Liang Li 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 Reviewed-by: Liang Li Reviewed-by: Juan Quintela CC: Paolo Bonzini CC: Juan Quintela CC: Amit Shah Signed-off-by: Juan Quintela --- migration/savevm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migration/savevm.c b/migration/savevm.c index 0596f7b..be52314 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