This repository contains all the changes:
git://repo.or.cz/qemu/quintela.git vmstate-cpus-v4 [v4] - rebase to top - adapt to vmstate.h change - adapt to CPUState -> CPU$archState rename - integrate arm changes in the meantime - add QEMU contributors to the copyright notice of ppc & sparc [v3] - rebase to top - fix sparc/arm/i386 changes in upstream - all reviews were positive, Anthony, please pull [v2] Changes since v1 - preserve arm comment that was missing (pbrook) - add copyright notice to the files that were empty - new patches: * fix formating for i386 * remove unneeded includes * rename machine.c to vmstate.c Later, Juan. [v1] This series port all cpus to use vmstate. - 1st patch is a fix of vmstate. - I discussed the arm changes over irc with Peter, he agreed that some simplification could be good, but he didn't saw the patches O:-) - mips: no pci chipset has been ported, so migration don't work there. I have embedded a couple of structs to improve vmstate checking. Notice that they were always allocated, so there shouldn't be any problem. - sparc: I changed the format a little bit to be able to use normal arrays. - sparc: If we always send the whole register windows, we don't need VMSTATE_VARRAY_MULTIPLY. As that array is quite big (520 elements), I am not sure what is best. - cpsr_vmstate on arm: I am not sure if I could "abuse" uncached_cpsr for that purpose? I have only tested on x86, for the rest, I double checked, but it is possible that I missed something. I expect all patches to be integrated by Anthony in one go. Architecture maintainers are CC'd for an ACK/NACK/comments. Please, review. PD. Is there an easy way of creating this "CC" list of mail addresses, or the only way is to edit comments and write it by hand as I did? Juan Quintela (36): vmstate: Simplify test for CPU_SAVE_VERSION vmstate: make all architectures export a way to migrate cpu's vmstate: unicore32 don't support cpu migration vmstate: use new cpu style for x86 vmstate: use new style for lm32 cpus vmstate: make microblaze cpus not migrateable vmstate: port cris cpu to vmstate vmstate: machine.c is only compiled for !CONFIG_USER_ONLY vmstate: introduce float32 arrays vmstate: introduce float64 arrays vmstate: introduce CPU_DoubleU arrays vmstate: Introduce VMSTATE_STRUCT_VARRAY_INT32_TEST vmstate: port ppc cpu vmstate: introduce VMSTATE_VARRAY_MULTIPLY vmstate: define vmstate_info_uinttls vmstate: port sparc cpu vmstate: make incompatible change for sparc mips_fulong2e: cpu vmstate already registered in cpu_exec_init mips: make mvp an embedded struct instead of a pointer mips: make tlb an embedded struct instead of a pointer mips: bump migration version to 4 vmstate: port mips cpu arm: save always 32 fpu registers vmstate: port arm cpu vmstate: all cpus converted vmstate: fix vmstate formating for i386 vmstate: remove unneeded includes from target-*/machine.c vmstate: rename machine.c to vmstate-cpu.c vmstate: Add copyright info for alpha processor vmstate: Add copyright info for lm32 processor vmstate: Add copyright info for cris processor vmstate: Add copyright info for arm processor vmstate: Add copyright info for i386 processor vmstate: Add copyright info for mips processor vmstate: Add copyright info for ppc processor vmstate: Add copyright info for sparc processor Makefile.target | 3 +- exec.c | 7 +- hw/hw.h | 2 + hw/mips_fulong2e.c | 1 - hw/mips_malta.c | 4 +- hw/mips_timer.c | 2 +- hw/sun4u.c | 20 -- qemu-common.h | 4 - savevm.c | 90 ++++++++ target-alpha/{machine.c => vmstate-cpu.c} | 28 ++- target-arm/cpu.h | 5 +- target-arm/machine.c | 233 --------------------- target-arm/vmstate-cpu.c | 191 +++++++++++++++++ target-cris/cpu.h | 13 +- target-cris/machine.c | 90 -------- target-cris/vmstate-cpu.c | 74 +++++++ target-i386/cpu.h | 2 - target-i386/{machine.c => vmstate-cpu.c} | 64 ++++--- target-lm32/cpu.h | 2 - target-lm32/{machine.c => vmstate-cpu.c} | 32 ++-- target-m68k/vmstate-cpu.c | 21 ++ target-microblaze/cpu.h | 2 - target-microblaze/machine.c | 11 - target-microblaze/vmstate-cpu.c | 21 ++ target-mips/cpu.h | 11 +- target-mips/helper.c | 30 ++- target-mips/machine.c | 308 ---------------------------- target-mips/op_helper.c | 70 ++++--- target-mips/translate.c | 22 ++- target-mips/translate_init.c | 36 ++-- target-mips/vmstate-cpu.c | 225 ++++++++++++++++++++ target-ppc/cpu.h | 5 +- target-ppc/machine.c | 181 ---------------- target-ppc/vmstate-cpu.c | 130 ++++++++++++ target-s390x/{machine.c => vmstate-cpu.c} | 14 +- target-sh4/vmstate-cpu.c | 21 ++ target-sparc/cpu.h | 9 +- target-sparc/machine.c | 217 ------------------- target-sparc/vmstate-cpu.c | 175 ++++++++++++++++ target-unicore32/cpu.h | 2 - target-xtensa/{machine.c => vmstate-cpu.c} | 14 +- vmstate.h | 60 +++++- 42 files changed, 1195 insertions(+), 1257 deletions(-) rename target-alpha/{machine.c => vmstate-cpu.c} (85%) delete mode 100644 target-arm/machine.c create mode 100644 target-arm/vmstate-cpu.c delete mode 100644 target-cris/machine.c create mode 100644 target-cris/vmstate-cpu.c rename target-i386/{machine.c => vmstate-cpu.c} (89%) rename target-lm32/{machine.c => vmstate-cpu.c} (58%) delete mode 100644 target-m68k/machine.c create mode 100644 target-m68k/vmstate-cpu.c delete mode 100644 target-microblaze/machine.c create mode 100644 target-microblaze/vmstate-cpu.c delete mode 100644 target-mips/machine.c create mode 100644 target-mips/vmstate-cpu.c delete mode 100644 target-ppc/machine.c create mode 100644 target-ppc/vmstate-cpu.c rename target-s390x/{machine.c => vmstate-cpu.c} (79%) delete mode 100644 target-sh4/machine.c create mode 100644 target-sh4/vmstate-cpu.c delete mode 100644 target-sparc/machine.c create mode 100644 target-sparc/vmstate-cpu.c rename target-xtensa/{machine.c => vmstate-cpu.c} (88%) -- 1.7.7.6