Hi all, I resent this because most folks at Red Hat seemed to have problems about receiving it the first time. Any comments are welcome.
Thanks, Jianjun On 06/10/2016 09:44 AM, Jianjun Duan wrote: > 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. > > It is based on David's ppc-for-2.7. Comments are welcome. Previous versions > are: > > 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) > > To make guest device (PCI, CPU and memory) hotplug work together > with guest migration, spapr drc state needs be transmitted in > migration. This patch defines the VMStateDescription struct for > spapr drc state to enable it. > > To fix the potential racing between hotplug events on guest and > guest migration, ccs_list and pending_events of spapr state need be > transmitted in migration. This patch also takes care of it. > > > Jianjun Duan (6): > migration: alternative way to set instance_id in SaveStateEntry > migration: spapr_drc: defined VMStateDescription struct > migration: extend VMStateInfo > migration: migrate QTAILQ > migration: spapr: migrate ccs_list in spapr state > migration: spapr: migrate pending_events of spapr state > > 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/ppc/spapr.c | 67 ++++++++++++++++++ > hw/ppc/spapr_drc.c | 69 +++++++++++++++++++ > hw/ppc/spapr_events.c | 22 +++--- > hw/ppc/spapr_pci.c | 22 ++++++ > 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 | 6 +- > include/hw/ppc/spapr.h | 3 +- > include/hw/ppc/spapr_drc.h | 9 +++ > include/hw/qdev-core.h | 6 ++ > include/migration/vmstate.h | 36 ++++++++-- > include/qemu/queue.h | 32 +++++++++ > migration/savevm.c | 25 +++++-- > migration/vmstate.c | 161 > ++++++++++++++++++++++++++++++++++---------- > 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 +- > trace-events | 4 ++ > 29 files changed, 505 insertions(+), 109 deletions(-) >