[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 00/17] target/ppc: Fix truncation of env->hflags
From: |
Cédric Le Goater |
Subject: |
Re: [PATCH v4 00/17] target/ppc: Fix truncation of env->hflags |
Date: |
Tue, 16 Mar 2021 09:11:27 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 |
Hello,
I gave this series a try on some PPC machines : mac99, g3beige,
sam460ex, pseries, powernv, with linux, macos, darwin, aix and
didn't see any regression. Migration seems to work for pseries.
C.
On 3/15/21 7:45 PM, Richard Henderson wrote:
> Changes for v4:
> * Use hregs_recompute_hflags for hw/ppc/ reset.
> -- Incorporate Cedric's feedback.
>
> Changes for v3:
> * Fixes for linux-user, signal handling and startup.
> -- Oops, the directory in which I did testing for v2
> had a reduced set of targets.
>
> Changes for v2:
> * Do not put tcg internal state into migration, except to
> retain backward compatibility.
> * Do not touch anything in env in ppc_tr_init_disas_context.
> * Do make sure that hflags contains everything that it should.
> * Do verify that hflags is properly updated.
>
>
> r~
>
>
> Richard Henderson (17):
> target/ppc: Move helper_regs.h functions out-of-line
> target/ppc: Move 601 hflags adjustment to hreg_compute_hflags
> target/ppc: Properly sync cpu state with new msr in cpu_load_old
> target/ppc: Do not call hreg_compute_mem_idx after ppc_store_msr
> target/ppc: Retain hflags_nmsr only for migration
> target/ppc: Fix comment for MSR_FE{0,1}
> target/ppc: Disconnect hflags from MSR
> target/ppc: Reduce env->hflags to uint32_t
> target/ppc: Put dbcr0 single-step bits into hflags
> target/ppc: Create helper_scv
> target/ppc: Put LPCR[GTSE] in hflags
> target/ppc: Remove MSR_SA and MSR_AP from hflags
> target/ppc: Remove env->immu_idx and env->dmmu_idx
> hw/ppc/pnv_core: Update hflags after setting msr
> hw/ppc/spapr_rtas: Update hflags after setting msr
> linux-user/ppc: Fix msr updates for signal handling
> target/ppc: Validate hflags with CONFIG_DEBUG_TCG
>
> target/ppc/cpu.h | 50 +++++-
> target/ppc/helper.h | 1 +
> target/ppc/helper_regs.h | 183 +--------------------
> hw/ppc/pnv_core.c | 3 +-
> hw/ppc/spapr_rtas.c | 2 +
> linux-user/ppc/cpu_loop.c | 5 +-
> linux-user/ppc/signal.c | 23 ++-
> target/ppc/excp_helper.c | 9 ++
> target/ppc/helper_regs.c | 272 ++++++++++++++++++++++++++++++++
> target/ppc/int_helper.c | 1 +
> target/ppc/machine.c | 27 ++--
> target/ppc/mem_helper.c | 2 +-
> target/ppc/misc_helper.c | 13 +-
> target/ppc/mmu-hash64.c | 3 +
> target/ppc/translate.c | 98 ++++--------
> target/ppc/translate_init.c.inc | 4 +-
> target/ppc/meson.build | 1 +
> 17 files changed, 410 insertions(+), 287 deletions(-)
> create mode 100644 target/ppc/helper_regs.c
>