From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43887) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c1Iet-0006Jx-Ck for qemu-devel@nongnu.org; Mon, 31 Oct 2016 15:54:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c1Iep-0004s1-5p for qemu-devel@nongnu.org; Mon, 31 Oct 2016 15:54:15 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:49171) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1c1Ieo-0004r9-UH for qemu-devel@nongnu.org; Mon, 31 Oct 2016 15:54:11 -0400 Received: from pps.filterd (m0098394.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.17/8.16.0.17) with SMTP id u9VJs7Pl061012 for ; Mon, 31 Oct 2016 15:54:09 -0400 Received: from e36.co.us.ibm.com (e36.co.us.ibm.com [32.97.110.154]) by mx0a-001b2d01.pphosted.com with ESMTP id 26e674wvv4-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Mon, 31 Oct 2016 15:54:09 -0400 Received: from localhost by e36.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 31 Oct 2016 13:54:08 -0600 From: Jianjun Duan Date: Mon, 31 Oct 2016 12:53:53 -0700 Message-Id: <1477943636-21024-1-git-send-email-duanj@linux.vnet.ibm.com> Subject: [Qemu-devel] [QEMU PATCH v10 0/3] migration: migrate QTAILQ List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, duanj@linux.vnet.ibm.com, dmitry@daynix.com, peter.maydell@linaro.org, kraxel@redhat.com, mst@redhat.com, david@gibson.dropbear.id.au, pbonzini@redhat.com, veroniabahaa@gmail.com, quintela@redhat.com, amit.shah@redhat.com, mreitz@redhat.com, kwolf@redhat.com, rth@twiddle.net, aurelien@aurel32.net, leon.alrae@imgtec.com, blauwirbel@gmail.com, mark.cave-ayland@ilande.co.uk, mdroth@linux.vnet.ibm.com, dgilbert@redhat.com Hi all, I addressed some review comments. Comments are welcome. v10: - Fixed a typo. Previous versions are: v9: - No more hard encoding of QTAILQ layout information (link: http://lists.nongnu.org/archive/html/qemu-ppc/2016-10/msg01042.html) v8: - Fixed a style issue. (link: http://lists.nongnu.org/archive/html/qemu-ppc/2016-10/msg00874.html) v7: - Fixed merge errors. - Simplified macro definitions related to pointer arithmetic based QTAILQ access. - Added test case for QTAILQ migration in tests/test-vmstate.c. (link: http://lists.nongnu.org/archive/html/qemu-ppc/2016-10/msg00711.html) v6: - Split from Power specific patches. - Dropped VMS_LINKED flag. - Rebased to master. - Added comments to clarify about put/get in VMStateInfo. (link: http://lists.nongnu.org/archive/html/qemu-ppc/2016-10/msg00336.html) v5: - Rebased to David's ppc-for-2.8. (link: https://lists.nongnu.org/archive/html/qemu-devel/2016-10/msg00270.html) v4: - Introduce a way to set customized instance_id in SaveStateEntry. Use it to set instance_id for DRC using its unique index to address David Gibson's concern. - Rename VMS_CSTM to VMS_LINKED based on Paolo Bonzini's suggestions. - Clean up qjson stuff in put_qtailq. - Add trace for put_qtailq and get_qtailq based on David Gilbert's suggestion. - Based on David's ppc-for-2.7. (link: https://lists.nongnu.org/archive/html/qemu-devel/2016-06/msg07720.html) v3: - Simplify overall design followng discussion with Paolo. No longer need metadata to migrate QTAILQ. - Extend VMStateInfo instead of adding similar fields to VMStateField. - Clean up macros in qemu/queue.h. (link: https://lists.nongnu.org/archive/html/qemu-devel/2016-05/msg05695.html) v2: - Introduce a general approach to migrate QTAILQ in qemu/queue.h. - Migrate signalled field in the DRC state. - Put the newly added migrating fields in subsections so that backward migration is not broken. - Set detach_cb field right after migration so that a migrated hot-unplug event could finish its course. (link: https://lists.nongnu.org/archive/html/qemu-devel/2016-05/msg04188.html) v1: - Inital version. (link: https://lists.nongnu.org/archive/html/qemu-devel/2016-04/msg02601.html) Jianjun Duan (3): migration: extend VMStateInfo migration: migrate QTAILQ tests/migration: Add test for QTAILQ migration hw/display/virtio-gpu.c | 6 +- hw/intc/s390_flic_kvm.c | 6 +- hw/net/vmxnet3.c | 18 +++-- hw/nvram/eeprom93xx.c | 6 +- hw/nvram/fw_cfg.c | 6 +- hw/pci/msix.c | 6 +- hw/pci/pci.c | 12 ++- hw/pci/shpc.c | 5 +- hw/scsi/scsi-bus.c | 6 +- hw/timer/twl92230.c | 6 +- hw/usb/redirect.c | 18 +++-- hw/virtio/virtio-pci.c | 6 +- hw/virtio/virtio.c | 12 ++- include/migration/vmstate.h | 35 ++++++++- include/qemu/queue.h | 61 ++++++++++++++++ migration/savevm.c | 5 +- migration/trace-events | 4 + migration/vmstate.c | 173 ++++++++++++++++++++++++++++++++++---------- target-alpha/machine.c | 5 +- target-arm/machine.c | 12 ++- target-i386/machine.c | 21 ++++-- target-mips/machine.c | 10 ++- target-ppc/machine.c | 10 ++- target-sparc/machine.c | 5 +- tests/test-vmstate.c | 160 ++++++++++++++++++++++++++++++++++++++++ 25 files changed, 510 insertions(+), 104 deletions(-) -- 1.9.1