qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PULL 00/35] VMState port of all cpus


From: Juan Quintela
Subject: [Qemu-devel] [PULL 00/35] VMState port of all cpus
Date: Wed, 7 Dec 2011 19:42:45 +0100

The following changes since commit 217bfb445b54db618a30f3a39170bebd9fd9dbf2:

  hw/arm_gic.c: Ignore attempts to complete nonexistent IRQs (2011-12-05 
21:38:56 +0100)

are available in the git repository at:
  ssh://repo.or.cz/srv/git/qemu/quintela.git vmstate-cpus-v4-for-anthony

[v4]
- change comment: 
    * Bassed on qemu-file code done by:
  to
   * Based on savevm serialization code by:
- dropped sparc/ppc copyright notices.  After two tries, I haven't got
  something that Blae is happy with.


[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 (35):
      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 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

 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}  |   28 ++-
 target-arm/cpu.h                           |    5 +-
 target-arm/machine.c                       |  225 --------------------
 target-arm/vmstate-cpu.c                   |  188 +++++++++++++++++
 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                   |  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, 1134 insertions(+), 1249 deletions(-)
 rename target-alpha/{machine.c => vmstate-cpu.c} (84%)
 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} (57%)
 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.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]