[PATCH v5 00/10] target/ppc: Fix truncation of env->hflags

Richard Henderson posted 10 patches 3 years, 1 month ago
Failed in applying to current master (apply log)
target/ppc/cpu.h          |  43 +++++++++++--
target/ppc/helper.h       |   1 +
target/ppc/helper_regs.h  |   1 -
linux-user/ppc/cpu_loop.c |   5 +-
linux-user/ppc/signal.c   |  23 ++++---
target/ppc/excp_helper.c  |   9 +++
target/ppc/helper_regs.c  | 128 ++++++++++++++++++++++++++++++--------
target/ppc/machine.c      |  30 +++++----
target/ppc/mem_helper.c   |   2 +-
target/ppc/misc_helper.c  |   5 +-
target/ppc/mmu-hash64.c   |   3 +
target/ppc/translate.c    |  98 +++++++++--------------------
12 files changed, 215 insertions(+), 133 deletions(-)
[PATCH v5 00/10] target/ppc: Fix truncation of env->hflags
Posted by Richard Henderson 3 years, 1 month ago
Changes for v5:
 * Rebase on david's ppc-for-6.0 branch (fcc83aa7359d)
 * Extract post_load_update_msr (clg)
 * Validate MSR_FOO == HFLAGS_FOO when necessary (david)

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 (10):
  target/ppc: Extract post_load_update_msr
  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
  linux-user/ppc: Fix msr updates for signal handling
  target/ppc: Validate hflags with CONFIG_DEBUG_TCG

 target/ppc/cpu.h          |  43 +++++++++++--
 target/ppc/helper.h       |   1 +
 target/ppc/helper_regs.h  |   1 -
 linux-user/ppc/cpu_loop.c |   5 +-
 linux-user/ppc/signal.c   |  23 ++++---
 target/ppc/excp_helper.c  |   9 +++
 target/ppc/helper_regs.c  | 128 ++++++++++++++++++++++++++++++--------
 target/ppc/machine.c      |  30 +++++----
 target/ppc/mem_helper.c   |   2 +-
 target/ppc/misc_helper.c  |   5 +-
 target/ppc/mmu-hash64.c   |   3 +
 target/ppc/translate.c    |  98 +++++++++--------------------
 12 files changed, 215 insertions(+), 133 deletions(-)

-- 
2.25.1