qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 0/8] target-sparc: Update to use VMStateDescr


From: Mark Cave-Ayland
Subject: Re: [Qemu-devel] [PATCH v2 0/8] target-sparc: Update to use VMStateDescription
Date: Fri, 15 Jan 2016 17:03:03 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.5.0

On 11/01/16 12:40, Peter Maydell wrote:

> This patchset updates target-sparc to use VMStateDescription
> rather than hand-written save/load functions. (SPARC is the
> very last target still using the old approach. Once this patchset
> gets in via the sparc tree I'll send out the patches to clean
> up the core QOM CPU code to remove the unused support for
> hand-written save/load.)
> 
> It's based on some patches from back in 2012 by Juan which
> I've updated, rebased and made some tweaks to.
> 
> The major change here from v1 (sent back in August last year)
> is that we retain migration format compatibility for SPARC32.
> SPARC64 compat is broken, but SPARC64 migration doesn't work
> at the moment for any of our machines so that's OK.
> 
> Also new since v1 is the final patch, which fixes a bug spotted
> by Paolo where we weren't migrating env->cwp or env->psrpil for
> SPARC64. This bug fix means that sparc64 migration of a system
> that's sat at the boot prompt now works at least to the extent
> that the system will respond to key presses after the restore.
> 
> NB that the 'split cpu_put_psr' patch seems to me to be a
> bugfix in and of itself, since currently we might try to
> call cpu_check_irqs() and deliver interrupts while we're
> halfway through updating a PSR value...
> 
> Juan Quintela (4):
>   vmstate: introduce CPU_DoubleU arrays
>   vmstate: Introduce VMSTATE_VARRAY_MULTPLY
>   vmstate: define vmstate_info_uinttl
>   target-sparc: Convert to VMStateDescription
> 
> Peter Maydell (4):
>   target-sparc: Split cpu_put_psr into side-effect and no-side-effect
>     parts
>   target-sparc: Don't flush TLB in cpu_load function
>   target-sparc: Use VMState arrays for SPARC64 TLB/MMU state
>   target-sparc: Migrate CWP and PIL for SPARC64
> 
>  hw/sparc64/sun4u.c          |  24 ---
>  include/hw/hw.h             |   2 +
>  include/migration/vmstate.h |  18 +++
>  migration/vmstate.c         |  27 ++++
>  target-sparc/cpu-qom.h      |   4 +
>  target-sparc/cpu.c          |   1 +
>  target-sparc/cpu.h          |   7 +-
>  target-sparc/machine.c      | 370 
> ++++++++++++++++++++------------------------
>  target-sparc/win_helper.c   |  19 ++-
>  9 files changed, 236 insertions(+), 236 deletions(-)

Hi Peter,

Thanks for doing this! It's one of those things that has been on my list
of things to do but never seems to get to the the top...

I've just run through some SPARC32 tests with this patchset applied -
testing a savevm/loadvm pair pre-patch and post-patch, and then a few
random tests with various OSs at random points during boot and no
regressions here, so:

Tested-by: Mark Cave-Ayland <address@hidden>

The only minor nit I could see during review was that both patches 7 and
8 bump the VMState revision for SPARC64, and given that before the last
patch in the set nothing works then is it just worth bumping once to
version 8 in patch 7 and let that be it?


ATB,

Mark.




reply via email to

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