qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v4 00/36] VMState port of all cpus


From: Andreas Färber
Subject: Re: [Qemu-devel] [PATCH v4 00/36] VMState port of all cpus
Date: Wed, 21 Mar 2012 18:13:15 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.2) Gecko/20120215 Thunderbird/10.0.2

Am 19.03.2012 23:57, schrieb Juan Quintela:
> 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?

Actually I don't see any CCs at all in this series. Which makes me think
this is v1 rubbish in the new cover letter. :/

--cc-cmd="scripts/get_maintainer.pl --nogit-fallback" should work.

A general comment:
With regards to the ongoing CPU QOM'ification, if we ever arrive in a
scenario where we can have multiple targets in one machine, I guess the
VMState .name "cpu" would cause problems? In that case it might be
better to use the proposed QOM type names, i.e. "arm-cpu", etc. from the
start.

Andreas

> 
> 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%)

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

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