* [Qemu-devel] [PULL v3 00/29] VMState port of all cpus
@ 2011-11-03 10:26 Juan Quintela
2011-11-03 13:03 ` Anthony Liguori
0 siblings, 1 reply; 2+ messages in thread
From: Juan Quintela @ 2011-11-03 10:26 UTC (permalink / raw)
To: qemu-devel; +Cc: aliguori
The following changes since commit 932eacc158c064935c7bab920c88a93a629e1ca4:
Merge branch 'xtensa' of git://jcmvbkbc.spb.ru/dumb/qemu-xtensa (2011-11-02 20:52:23 +0000)
are available in the git repository at:
git://repo.or.cz/qemu/quintela.git vmstate-cpus-for-anthony
[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 (29):
vmstate: Fix VMSTATE_VARRAY_UINT32
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 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
Makefile.target | 3 +-
exec.c | 7 +-
hw/hw.h | 62 +++++-
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 | 92 +++++++++
target-alpha/{machine.c => vmstate-cpu.c} | 13 +-
target-arm/cpu.h | 5 +-
target-arm/machine.c | 225 --------------------
target-arm/vmstate-cpu.c | 173 ++++++++++++++++
target-cris/cpu.h | 13 +-
target-cris/machine.c | 90 --------
target-cris/vmstate-cpu.c | 59 ++++++
target-i386/cpu.h | 2 -
target-i386/{machine.c => vmstate-cpu.c} | 36 +---
target-lm32/cpu.h | 2 -
target-lm32/{machine.c => vmstate-cpu.c} | 17 +--
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 | 196 ++++++++++++++++++
target-ppc/cpu.h | 5 +-
target-ppc/machine.c | 181 ----------------
target-ppc/vmstate-cpu.c | 100 +++++++++
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 | 145 +++++++++++++
target-unicore32/cpu.h | 2 -
target-xtensa/{machine.c => vmstate-cpu.c} | 14 +-
41 files changed, 1017 insertions(+), 1249 deletions(-)
rename target-alpha/{machine.c => vmstate-cpu.c} (88%)
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} (94%)
rename target-lm32/{machine.c => vmstate-cpu.c} (61%)
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%)
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] [PULL v3 00/29] VMState port of all cpus
2011-11-03 10:26 [Qemu-devel] [PULL v3 00/29] VMState port of all cpus Juan Quintela
@ 2011-11-03 13:03 ` Anthony Liguori
0 siblings, 0 replies; 2+ messages in thread
From: Anthony Liguori @ 2011-11-03 13:03 UTC (permalink / raw)
To: Juan Quintela; +Cc: qemu-devel
On 11/03/2011 05:26 AM, Juan Quintela wrote:
> The following changes since commit 932eacc158c064935c7bab920c88a93a629e1ca4:
>
> Merge branch 'xtensa' of git://jcmvbkbc.spb.ru/dumb/qemu-xtensa (2011-11-02 20:52:23 +0000)
>
> are available in the git repository at:
>
> git://repo.or.cz/qemu/quintela.git vmstate-cpus-for-anthony
>
> [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.
Hi Juan,
This will need to wait until 1.1 opens up.
Regards,
Anthony Liguori
>
> [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 (29):
> vmstate: Fix VMSTATE_VARRAY_UINT32
> 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 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
>
> Makefile.target | 3 +-
> exec.c | 7 +-
> hw/hw.h | 62 +++++-
> 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 | 92 +++++++++
> target-alpha/{machine.c => vmstate-cpu.c} | 13 +-
> target-arm/cpu.h | 5 +-
> target-arm/machine.c | 225 --------------------
> target-arm/vmstate-cpu.c | 173 ++++++++++++++++
> target-cris/cpu.h | 13 +-
> target-cris/machine.c | 90 --------
> target-cris/vmstate-cpu.c | 59 ++++++
> target-i386/cpu.h | 2 -
> target-i386/{machine.c => vmstate-cpu.c} | 36 +---
> target-lm32/cpu.h | 2 -
> target-lm32/{machine.c => vmstate-cpu.c} | 17 +--
> 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 | 196 ++++++++++++++++++
> target-ppc/cpu.h | 5 +-
> target-ppc/machine.c | 181 ----------------
> target-ppc/vmstate-cpu.c | 100 +++++++++
> 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 | 145 +++++++++++++
> target-unicore32/cpu.h | 2 -
> target-xtensa/{machine.c => vmstate-cpu.c} | 14 +-
> 41 files changed, 1017 insertions(+), 1249 deletions(-)
> rename target-alpha/{machine.c => vmstate-cpu.c} (88%)
> 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} (94%)
> rename target-lm32/{machine.c => vmstate-cpu.c} (61%)
> 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%)
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2011-11-03 13:07 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-11-03 10:26 [Qemu-devel] [PULL v3 00/29] VMState port of all cpus Juan Quintela
2011-11-03 13:03 ` Anthony Liguori
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.