VMState port of all cpus
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v5 Latest35 patches 20 repliesIn review
- v436 patches 23 repliesSuperseded
- v228 patches 0 repliesSuperseded
Earlier versions · 1
| Version | Posted | Patches | Replies | Status |
|---|---|---|---|---|
| v1 | 25 patches | 13 replies | Superseded |
[v2] Changes since v1 from the cover letter
- 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
Patches in v5 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/35 | vmstate: Simplify test for CPU_SAVE_VERSIONexec.c | +4 | 3 replies | |
| 2/35 | vmstate: make all architectures export a way to migrate cpu'sexec.c target-alpha/ target-i386/ +6 more | +61 | 2 replies | |
| 3/35 | vmstate: unicore32 don't support cpu migrationtarget-unicore32/ | +0 | 0 replies | |
| 4/35 | vmstate: use new cpu style for x86target-i386/ target-i386/ | +1 | 0 replies | |
| 5/35 | vmstate: use new style for lm32 cpustarget-lm32/ target-lm32/ | +2 | 0 replies | |
| 6/35 | vmstate: make microblaze cpus not migrateabletarget-microblaze/ target-microblaze/ | +18 | 0 replies | |
| 7/35 | vmstate: port cris cpu to vmstatetarget-cris/ target-cris/ | +60 | 0 replies | |
| 8/35 | vmstate: introduce float32 arrayssavevm.c vmstate.h | +30 | 1 reply | |
| 9/35 | vmstate: introduce float64 arrayssavevm.c vmstate.h | +29 | 1 reply | |
| 10/35 | vmstate: introduce CPU_DoubleU arrayssavevm.c vmstate.h | +28 | 0 replies | |
| 11/35 | vmstate: Introduce VMSTATE_STRUCT_VARRAY_INT32_TESTvmstate.h | +10 | 0 replies | |
| 12/35 | vmstate: port ppc cputarget-ppc/ target-ppc/ | +90 | 0 replies | |
| 13/35 | vmstate: introduce VMSTATE_VARRAY_MULTIPLYsavevm.c vmstate.h | +29 | 0 replies | |
| 14/35 | vmstate: define vmstate_info_uinttlshw/ | +2 | 0 replies | |
| 15/35 | vmstate: port sparc cpuhw/ target-sparc/ target-sparc/ | +283 | 0 replies | |
| 16/35 | vmstate: make incompatible change for sparctarget-sparc/ | +9 | 4 replies | |
| 17/35 | mips_fulong2e: cpu vmstate already registered in cpu_exec_inithw/ | +0 | 1 reply | |
| 18/35 | mips: make mvp an embedded struct instead of a pointerhw/ target-mips/ target-mips/ +3 more | +36 | 0 replies | |
| 19/35 | mips: make tlb an embedded struct instead of a pointerhw/ target-mips/ target-mips/ +4 more | +89 | 0 replies | |
| 20/35 | mips: bump migration version to 4target-mips/ target-mips/ | +5 | 0 replies | |
| 21/35 | vmstate: port mips cputarget-mips/ target-mips/ | +182 | 0 replies | |
| 22/35 | arm: save always 32 fpu registerstarget-arm/ target-arm/ | +3 | 1 reply | |
| 23/35 | vmstate: port arm cputarget-arm/ target-arm/ | +156 | 3 replies | |
| 24/35 | vmstate: all cpus convertedexec.c qemu-common.h | +0 | 0 replies | |
| 25/35 | vmstate: fix vmstate formating for i386target-i386/ | +8 | 0 replies | |
| 26/35 | vmstate: remove unneeded includes from target-*/machine.ctarget-alpha/ target-arm/ target-cris/ +5 more | +0 | 0 replies | |
| 27/35 | vmstate: rename machine.c to vmstate-cpu.cMakefile.target target-alpha/ target-arm/ +11 more | +2 | 0 replies | |
| 28/35 | vmstate: Add copyright info for alpha processortarget-alpha/ | +15 | 0 replies | |
| 29/35 | vmstate: Add copyright info for lm32 processortarget-lm32/ | +15 | 0 replies | |
| 30/35 | vmstate: Add copyright info for cris processortarget-cris/ | +15 | 0 replies | |
| 31/35 | vmstate: Add copyright info for arm processortarget-arm/ | +15 | 0 replies | |
| 32/35 | vmstate: Add copyright info for i386 processortarget-i386/ | +28 | 0 replies | |
| 33/35 | vmstate: Add copyright info for mips processortarget-mips/ | +29 | 0 replies | |
| 34/35 | vmstate: Add copyright info for ppc processortarget-ppc/ | +30 | 0 replies | |
| 35/35 | vmstate: Add copyright info for sparc processortarget-sparc/ | +30 | 0 replies |
Reviews trailers per patch
5 of 35 patches have a Reviewed-by or Acked-by.
| Patch | Michael Walle | Richard Henderson | Edgar E. Iglesias | Andrzej Zaborowski | Blue Swirl |
|---|---|---|---|---|---|
| 1/35 | |||||
| 2/35 | |||||
| 3/35 | |||||
| 4/35 | |||||
| 5/35 | |||||
| 6/35 | |||||
| 7/35 | |||||
| 8/35 | |||||
| 9/35 | |||||
| 10/35 | |||||
| 11/35 | |||||
| 12/35 | |||||
| 13/35 | |||||
| 14/35 | |||||
| 15/35 | |||||
| 16/35 | A-b | ||||
| 17/35 | |||||
| 18/35 | |||||
| 19/35 | |||||
| 20/35 | |||||
| 21/35 | |||||
| 22/35 | |||||
| 23/35 | |||||
| 24/35 | |||||
| 25/35 | |||||
| 26/35 | |||||
| 27/35 | |||||
| 28/35 | A-b | ||||
| 29/35 | A-b | ||||
| 30/35 | A-b | ||||
| 31/35 | A-b | ||||
| 32/35 | |||||
| 33/35 | |||||
| 34/35 | |||||
| 35/35 |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 5 reviewers.
Cover letter [Qemu-devel] [PATCH v5 00/35] VMState port of all cpus
This repository contains all the changes:
git://repo.or.cz/qemu/quintela.git vmstate-cpus-v4
[v5]
- rebase on top
- sparc psr change behaviour: old behaviour was unintended, thanks Blu
- alexander agreed with ppc changes
- patch missing already included for ppc
Anthony, please pull.
[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
[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.
Juan Quintela (35):
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: 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 | 80 +++++++
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 | 173 ----------------
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, 1185 insertions(+), 1249 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%)Signature · 1 line
1.7.7.6