qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3 24/39] target/s390x: Use env_cpu, env_archcpu


From: Alistair Francis
Subject: Re: [Qemu-devel] [PATCH v3 24/39] target/s390x: Use env_cpu, env_archcpu
Date: Thu, 9 May 2019 11:31:33 -0700

On Tue, May 7, 2019 at 5:23 PM Richard Henderson
<address@hidden> wrote:
>
> Reviewed-by: Peter Maydell <address@hidden>
> Signed-off-by: Richard Henderson <address@hidden>

Reviewed-by: Alistair Francis <address@hidden>

Alistair

> ---
>  target/s390x/cpu.h          |  5 ----
>  linux-user/s390x/cpu_loop.c |  2 +-
>  target/s390x/cc_helper.c    |  5 ++--
>  target/s390x/diag.c         |  2 +-
>  target/s390x/excp_helper.c  |  6 ++---
>  target/s390x/fpu_helper.c   |  4 +--
>  target/s390x/helper.c       |  7 +++---
>  target/s390x/int_helper.c   |  3 +--
>  target/s390x/interrupt.c    |  6 ++---
>  target/s390x/mem_helper.c   | 28 ++++++++-------------
>  target/s390x/misc_helper.c  | 50 ++++++++++++++++++-------------------
>  target/s390x/mmu_helper.c   |  8 +++---
>  target/s390x/sigp.c         |  4 +--
>  13 files changed, 56 insertions(+), 74 deletions(-)
>
> diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h
> index 9cdd831a77..eefed6f509 100644
> --- a/target/s390x/cpu.h
> +++ b/target/s390x/cpu.h
> @@ -163,11 +163,6 @@ struct S390CPU {
>      uint32_t irqstate_saved_size;
>  };
>
> -static inline S390CPU *s390_env_get_cpu(CPUS390XState *env)
> -{
> -    return container_of(env, S390CPU, env);
> -}
> -
>  #define ENV_OFFSET offsetof(S390CPU, env)
>
>  #ifndef CONFIG_USER_ONLY
> diff --git a/linux-user/s390x/cpu_loop.c b/linux-user/s390x/cpu_loop.c
> index b8bd1c956c..8211022ceb 100644
> --- a/linux-user/s390x/cpu_loop.c
> +++ b/linux-user/s390x/cpu_loop.c
> @@ -26,7 +26,7 @@
>
>  void cpu_loop(CPUS390XState *env)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>      int trapnr, n, sig;
>      target_siginfo_t info;
>      target_ulong addr;
> diff --git a/target/s390x/cc_helper.c b/target/s390x/cc_helper.c
> index 0e467bf2b6..e9732500ad 100644
> --- a/target/s390x/cc_helper.c
> +++ b/target/s390x/cc_helper.c
> @@ -405,7 +405,6 @@ static uint32_t cc_calc_lcbb(uint64_t dst)
>  static uint32_t do_calc_cc(CPUS390XState *env, uint32_t cc_op,
>                                    uint64_t src, uint64_t dst, uint64_t vr)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
>      uint32_t r = 0;
>
>      switch (cc_op) {
> @@ -526,7 +525,7 @@ static uint32_t do_calc_cc(CPUS390XState *env, uint32_t 
> cc_op,
>          break;
>
>      default:
> -        cpu_abort(CPU(cpu), "Unknown CC operation: %s\n", cc_name(cc_op));
> +        cpu_abort(env_cpu(env), "Unknown CC operation: %s\n", 
> cc_name(cc_op));
>      }
>
>      HELPER_LOG("%s: %15s 0x%016lx 0x%016lx 0x%016lx = %d\n", __func__,
> @@ -550,7 +549,7 @@ uint32_t HELPER(calc_cc)(CPUS390XState *env, uint32_t 
> cc_op, uint64_t src,
>  void HELPER(load_psw)(CPUS390XState *env, uint64_t mask, uint64_t addr)
>  {
>      load_psw(env, mask, addr);
> -    cpu_loop_exit(CPU(s390_env_get_cpu(env)));
> +    cpu_loop_exit(env_cpu(env));
>  }
>
>  void HELPER(sacf)(CPUS390XState *env, uint64_t a1)
> diff --git a/target/s390x/diag.c b/target/s390x/diag.c
> index aafa740f61..65eabf0461 100644
> --- a/target/s390x/diag.c
> +++ b/target/s390x/diag.c
> @@ -55,7 +55,7 @@ int handle_diag_288(CPUS390XState *env, uint64_t r1, 
> uint64_t r3)
>
>  void handle_diag_308(CPUS390XState *env, uint64_t r1, uint64_t r3, uintptr_t 
> ra)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>      uint64_t addr =  env->regs[r1];
>      uint64_t subcode = env->regs[r3];
>      IplParameterBlock *iplb;
> diff --git a/target/s390x/excp_helper.c b/target/s390x/excp_helper.c
> index f84bfb1284..b83c1e6559 100644
> --- a/target/s390x/excp_helper.c
> +++ b/target/s390x/excp_helper.c
> @@ -36,7 +36,7 @@
>  void QEMU_NORETURN tcg_s390_program_interrupt(CPUS390XState *env, uint32_t 
> code,
>                                                int ilen, uintptr_t ra)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>
>      cpu_restore_state(cs, ra, true);
>      qemu_log_mask(CPU_LOG_INT, "program interrupt at %#" PRIx64 "\n",
> @@ -51,7 +51,7 @@ void QEMU_NORETURN tcg_s390_data_exception(CPUS390XState 
> *env, uint32_t dxc,
>      g_assert(dxc <= 0xff);
>  #if !defined(CONFIG_USER_ONLY)
>      /* Store the DXC into the lowcore */
> -    stl_phys(CPU(s390_env_get_cpu(env))->as,
> +    stl_phys(env_cpu(env)->as,
>               env->psa + offsetof(LowCore, data_exc_code), dxc);
>  #endif
>
> @@ -261,7 +261,7 @@ static void do_svc_interrupt(CPUS390XState *env)
>  static void do_ext_interrupt(CPUS390XState *env)
>  {
>      QEMUS390FLICState *flic = QEMU_S390_FLIC(s390_get_flic());
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      uint64_t mask, addr;
>      uint16_t cpu_addr;
>      LowCore *lowcore;
> diff --git a/target/s390x/fpu_helper.c b/target/s390x/fpu_helper.c
> index 1be68bafea..906fa8ce99 100644
> --- a/target/s390x/fpu_helper.c
> +++ b/target/s390x/fpu_helper.c
> @@ -114,8 +114,6 @@ static void handle_exceptions(CPUS390XState *env, bool 
> XxC, uintptr_t retaddr)
>
>  static inline int float_comp_to_cc(CPUS390XState *env, int float_compare)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> -
>      switch (float_compare) {
>      case float_relation_equal:
>          return 0;
> @@ -126,7 +124,7 @@ static inline int float_comp_to_cc(CPUS390XState *env, 
> int float_compare)
>      case float_relation_unordered:
>          return 3;
>      default:
> -        cpu_abort(CPU(cpu), "unknown return value for float compare\n");
> +        cpu_abort(env_cpu(env), "unknown return value for float compare\n");
>      }
>  }
>
> diff --git a/target/s390x/helper.c b/target/s390x/helper.c
> index f957a2c830..52399bf7f4 100644
> --- a/target/s390x/helper.c
> +++ b/target/s390x/helper.c
> @@ -111,11 +111,11 @@ void load_psw(CPUS390XState *env, uint64_t mask, 
> uint64_t addr)
>      env->cc_op = (mask >> 44) & 3;
>
>      if ((old_mask ^ mask) & PSW_MASK_PER) {
> -        s390_cpu_recompute_watchpoints(CPU(s390_env_get_cpu(env)));
> +        s390_cpu_recompute_watchpoints(env_cpu(env));
>      }
>
>      if (mask & PSW_MASK_WAIT) {
> -        s390_handle_wait(s390_env_get_cpu(env));
> +        s390_handle_wait(env_archcpu(env));
>      }
>  }
>
> @@ -137,14 +137,13 @@ uint64_t get_psw_mask(CPUS390XState *env)
>
>  LowCore *cpu_map_lowcore(CPUS390XState *env)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
>      LowCore *lowcore;
>      hwaddr len = sizeof(LowCore);
>
>      lowcore = cpu_physical_memory_map(env->psa, &len, 1);
>
>      if (len < sizeof(LowCore)) {
> -        cpu_abort(CPU(cpu), "Could not map lowcore\n");
> +        cpu_abort(env_cpu(env), "Could not map lowcore\n");
>      }
>
>      return lowcore;
> diff --git a/target/s390x/int_helper.c b/target/s390x/int_helper.c
> index abbbc20d9c..d13cc49be6 100644
> --- a/target/s390x/int_helper.c
> +++ b/target/s390x/int_helper.c
> @@ -109,10 +109,9 @@ uint64_t HELPER(divu64)(CPUS390XState *env, uint64_t ah, 
> uint64_t al,
>              s390_program_interrupt(env, PGM_FIXPT_DIVIDE, ILEN_AUTO, 
> GETPC());
>          }
>  #else
> -        S390CPU *cpu = s390_env_get_cpu(env);
>          /* 32-bit hosts would need special wrapper functionality - just 
> abort if
>             we encounter such a case; it's very unlikely anyways. */
> -        cpu_abort(CPU(cpu), "128 -> 64/64 division not implemented\n");
> +        cpu_abort(env_cpu(env), "128 -> 64/64 division not implemented\n");
>  #endif
>      }
>      return ret;
> diff --git a/target/s390x/interrupt.c b/target/s390x/interrupt.c
> index a17eff5ebc..a8f9b38795 100644
> --- a/target/s390x/interrupt.c
> +++ b/target/s390x/interrupt.c
> @@ -23,7 +23,7 @@
>  /* Ensure to exit the TB after this call! */
>  void trigger_pgm_exception(CPUS390XState *env, uint32_t code, uint32_t ilen)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>
>      cs->exception_index = EXCP_PGM;
>      env->int_pgm_code = code;
> @@ -33,10 +33,8 @@ void trigger_pgm_exception(CPUS390XState *env, uint32_t 
> code, uint32_t ilen)
>  void s390_program_interrupt(CPUS390XState *env, uint32_t code, int ilen,
>                              uintptr_t ra)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> -
>      if (kvm_enabled()) {
> -        kvm_s390_program_interrupt(cpu, code);
> +        kvm_s390_program_interrupt(env_archcpu(env), code);
>      } else if (tcg_enabled()) {
>          tcg_s390_program_interrupt(env, code, ilen, ra);
>      } else {
> diff --git a/target/s390x/mem_helper.c b/target/s390x/mem_helper.c
> index e2992deb2f..f02eb85d30 100644
> --- a/target/s390x/mem_helper.c
> +++ b/target/s390x/mem_helper.c
> @@ -1633,7 +1633,6 @@ uint32_t HELPER(csst_parallel)(CPUS390XState *env, 
> uint32_t r3, uint64_t a1,
>  void HELPER(lctlg)(CPUS390XState *env, uint32_t r1, uint64_t a2, uint32_t r3)
>  {
>      uintptr_t ra = GETPC();
> -    S390CPU *cpu = s390_env_get_cpu(env);
>      bool PERchanged = false;
>      uint64_t src = a2;
>      uint32_t i;
> @@ -1658,16 +1657,15 @@ void HELPER(lctlg)(CPUS390XState *env, uint32_t r1, 
> uint64_t a2, uint32_t r3)
>      }
>
>      if (PERchanged && env->psw.mask & PSW_MASK_PER) {
> -        s390_cpu_recompute_watchpoints(CPU(cpu));
> +        s390_cpu_recompute_watchpoints(env_cpu(env));
>      }
>
> -    tlb_flush(CPU(cpu));
> +    tlb_flush(env_cpu(env));
>  }
>
>  void HELPER(lctl)(CPUS390XState *env, uint32_t r1, uint64_t a2, uint32_t r3)
>  {
>      uintptr_t ra = GETPC();
> -    S390CPU *cpu = s390_env_get_cpu(env);
>      bool PERchanged = false;
>      uint64_t src = a2;
>      uint32_t i;
> @@ -1691,10 +1689,10 @@ void HELPER(lctl)(CPUS390XState *env, uint32_t r1, 
> uint64_t a2, uint32_t r3)
>      }
>
>      if (PERchanged && env->psw.mask & PSW_MASK_PER) {
> -        s390_cpu_recompute_watchpoints(CPU(cpu));
> +        s390_cpu_recompute_watchpoints(env_cpu(env));
>      }
>
> -    tlb_flush(CPU(cpu));
> +    tlb_flush(env_cpu(env));
>  }
>
>  void HELPER(stctg)(CPUS390XState *env, uint32_t r1, uint64_t a2, uint32_t r3)
> @@ -1753,8 +1751,8 @@ uint32_t HELPER(testblock)(CPUS390XState *env, uint64_t 
> real_addr)
>
>  uint32_t HELPER(tprot)(CPUS390XState *env, uint64_t a1, uint64_t a2)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> -    CPUState *cs = CPU(cpu);
> +    S390CPU *cpu = env_archcpu(env);
> +    CPUState *cs = env_cpu(env);
>
>      /*
>       * TODO: we currently don't handle all access protection types
> @@ -1922,7 +1920,7 @@ uint32_t HELPER(mvcp)(CPUS390XState *env, uint64_t l, 
> uint64_t a1, uint64_t a2)
>
>  void HELPER(idte)(CPUS390XState *env, uint64_t r1, uint64_t r2, uint32_t m4)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>      const uintptr_t ra = GETPC();
>      uint64_t table, entry, raddr;
>      uint16_t entries, i, index = 0;
> @@ -1974,7 +1972,7 @@ void HELPER(idte)(CPUS390XState *env, uint64_t r1, 
> uint64_t r2, uint32_t m4)
>  void HELPER(ipte)(CPUS390XState *env, uint64_t pto, uint64_t vaddr,
>                    uint32_t m4)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>      const uintptr_t ra = GETPC();
>      uint64_t page = vaddr & TARGET_PAGE_MASK;
>      uint64_t pte_addr, pte;
> @@ -2014,17 +2012,13 @@ void HELPER(ipte)(CPUS390XState *env, uint64_t pto, 
> uint64_t vaddr,
>  /* flush local tlb */
>  void HELPER(ptlb)(CPUS390XState *env)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> -
> -    tlb_flush(CPU(cpu));
> +    tlb_flush(env_cpu(env));
>  }
>
>  /* flush global tlb */
>  void HELPER(purge)(CPUS390XState *env)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> -
> -    tlb_flush_all_cpus_synced(CPU(cpu));
> +    tlb_flush_all_cpus_synced(env_cpu(env));
>  }
>
>  /* load using real address */
> @@ -2068,7 +2062,7 @@ void HELPER(sturg)(CPUS390XState *env, uint64_t addr, 
> uint64_t v1)
>  /* load real address */
>  uint64_t HELPER(lra)(CPUS390XState *env, uint64_t addr)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>      uint32_t cc = 0;
>      uint64_t asc = env->psw.mask & PSW_MASK_ASC;
>      uint64_t ret;
> diff --git a/target/s390x/misc_helper.c b/target/s390x/misc_helper.c
> index ee67c1fa0c..c806c3ec00 100644
> --- a/target/s390x/misc_helper.c
> +++ b/target/s390x/misc_helper.c
> @@ -55,7 +55,7 @@
>  /* Raise an exception statically from a TB.  */
>  void HELPER(exception)(CPUS390XState *env, uint32_t excp)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>
>      HELPER_LOG("%s: exception %d\n", __func__, excp);
>      cs->exception_index = excp;
> @@ -150,7 +150,7 @@ void HELPER(diag)(CPUS390XState *env, uint32_t r1, 
> uint32_t r3, uint32_t num)
>  /* Set Prefix */
>  void HELPER(spx)(CPUS390XState *env, uint64_t a1)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>      uint32_t prefix = a1 & 0x7fffe000;
>
>      env->psa = prefix;
> @@ -256,7 +256,7 @@ uint32_t HELPER(stsi)(CPUS390XState *env, uint64_t a0, 
> uint64_t r0, uint64_t r1)
>      const uint32_t sel2 = r1 & STSI_R1_SEL2_MASK;
>      const MachineState *ms = MACHINE(qdev_get_machine());
>      uint16_t total_cpus = 0, conf_cpus = 0, reserved_cpus = 0;
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      SysIB sysib = { };
>      int i, cc = 0;
>
> @@ -411,7 +411,7 @@ uint32_t HELPER(sigp)(CPUS390XState *env, uint64_t 
> order_code, uint32_t r1,
>  #ifndef CONFIG_USER_ONLY
>  void HELPER(xsch)(CPUS390XState *env, uint64_t r1)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_xsch(cpu, r1, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -419,7 +419,7 @@ void HELPER(xsch)(CPUS390XState *env, uint64_t r1)
>
>  void HELPER(csch)(CPUS390XState *env, uint64_t r1)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_csch(cpu, r1, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -427,7 +427,7 @@ void HELPER(csch)(CPUS390XState *env, uint64_t r1)
>
>  void HELPER(hsch)(CPUS390XState *env, uint64_t r1)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_hsch(cpu, r1, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -435,7 +435,7 @@ void HELPER(hsch)(CPUS390XState *env, uint64_t r1)
>
>  void HELPER(msch)(CPUS390XState *env, uint64_t r1, uint64_t inst)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_msch(cpu, r1, inst >> 16, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -443,7 +443,7 @@ void HELPER(msch)(CPUS390XState *env, uint64_t r1, 
> uint64_t inst)
>
>  void HELPER(rchp)(CPUS390XState *env, uint64_t r1)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_rchp(cpu, r1, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -451,7 +451,7 @@ void HELPER(rchp)(CPUS390XState *env, uint64_t r1)
>
>  void HELPER(rsch)(CPUS390XState *env, uint64_t r1)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_rsch(cpu, r1, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -459,7 +459,7 @@ void HELPER(rsch)(CPUS390XState *env, uint64_t r1)
>
>  void HELPER(sal)(CPUS390XState *env, uint64_t r1)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      ioinst_handle_sal(cpu, r1, GETPC());
> @@ -468,7 +468,7 @@ void HELPER(sal)(CPUS390XState *env, uint64_t r1)
>
>  void HELPER(schm)(CPUS390XState *env, uint64_t r1, uint64_t r2, uint64_t 
> inst)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      ioinst_handle_schm(cpu, r1, r2, inst >> 16, GETPC());
> @@ -477,7 +477,7 @@ void HELPER(schm)(CPUS390XState *env, uint64_t r1, 
> uint64_t r2, uint64_t inst)
>
>  void HELPER(ssch)(CPUS390XState *env, uint64_t r1, uint64_t inst)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_ssch(cpu, r1, inst >> 16, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -485,7 +485,7 @@ void HELPER(ssch)(CPUS390XState *env, uint64_t r1, 
> uint64_t inst)
>
>  void HELPER(stcrw)(CPUS390XState *env, uint64_t inst)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      ioinst_handle_stcrw(cpu, inst >> 16, GETPC());
> @@ -494,7 +494,7 @@ void HELPER(stcrw)(CPUS390XState *env, uint64_t inst)
>
>  void HELPER(stsch)(CPUS390XState *env, uint64_t r1, uint64_t inst)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_stsch(cpu, r1, inst >> 16, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -503,7 +503,7 @@ void HELPER(stsch)(CPUS390XState *env, uint64_t r1, 
> uint64_t inst)
>  uint32_t HELPER(tpi)(CPUS390XState *env, uint64_t addr)
>  {
>      const uintptr_t ra = GETPC();
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      QEMUS390FLICState *flic = s390_get_qemu_flic(s390_get_flic());
>      QEMUS390FlicIO *io = NULL;
>      LowCore *lowcore;
> @@ -555,7 +555,7 @@ uint32_t HELPER(tpi)(CPUS390XState *env, uint64_t addr)
>
>  void HELPER(tsch)(CPUS390XState *env, uint64_t r1, uint64_t inst)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_tsch(cpu, r1, inst >> 16, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -563,7 +563,7 @@ void HELPER(tsch)(CPUS390XState *env, uint64_t r1, 
> uint64_t inst)
>
>  void HELPER(chsc)(CPUS390XState *env, uint64_t inst)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      qemu_mutex_lock_iothread();
>      ioinst_handle_chsc(cpu, inst >> 16, GETPC());
>      qemu_mutex_unlock_iothread();
> @@ -618,7 +618,7 @@ void HELPER(per_ifetch)(CPUS390XState *env, uint64_t addr)
>          /* If the instruction has to be nullified, trigger the
>             exception immediately. */
>          if (env->cregs[9] & PER_CR9_EVENT_NULLIFICATION) {
> -            CPUState *cs = CPU(s390_env_get_cpu(env));
> +            CPUState *cs = env_cpu(env);
>
>              env->per_perc_atmid |= PER_CODE_EVENT_NULLIFICATION;
>              env->int_pgm_code = PGM_PER;
> @@ -695,7 +695,7 @@ uint32_t HELPER(stfle)(CPUS390XState *env, uint64_t addr)
>   */
>  void HELPER(clp)(CPUS390XState *env, uint32_t r2)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      clp_service_call(cpu, r2, GETPC());
> @@ -704,7 +704,7 @@ void HELPER(clp)(CPUS390XState *env, uint32_t r2)
>
>  void HELPER(pcilg)(CPUS390XState *env, uint32_t r1, uint32_t r2)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      pcilg_service_call(cpu, r1, r2, GETPC());
> @@ -713,7 +713,7 @@ void HELPER(pcilg)(CPUS390XState *env, uint32_t r1, 
> uint32_t r2)
>
>  void HELPER(pcistg)(CPUS390XState *env, uint32_t r1, uint32_t r2)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      pcistg_service_call(cpu, r1, r2, GETPC());
> @@ -723,7 +723,7 @@ void HELPER(pcistg)(CPUS390XState *env, uint32_t r1, 
> uint32_t r2)
>  void HELPER(stpcifc)(CPUS390XState *env, uint32_t r1, uint64_t fiba,
>                       uint32_t ar)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      stpcifc_service_call(cpu, r1, fiba, ar, GETPC());
> @@ -745,7 +745,7 @@ void HELPER(sic)(CPUS390XState *env, uint64_t r1, 
> uint64_t r3)
>
>  void HELPER(rpcit)(CPUS390XState *env, uint32_t r1, uint32_t r2)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      rpcit_service_call(cpu, r1, r2, GETPC());
> @@ -755,7 +755,7 @@ void HELPER(rpcit)(CPUS390XState *env, uint32_t r1, 
> uint32_t r2)
>  void HELPER(pcistb)(CPUS390XState *env, uint32_t r1, uint32_t r3,
>                      uint64_t gaddr, uint32_t ar)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      pcistb_service_call(cpu, r1, r3, gaddr, ar, GETPC());
> @@ -765,7 +765,7 @@ void HELPER(pcistb)(CPUS390XState *env, uint32_t r1, 
> uint32_t r3,
>  void HELPER(mpcifc)(CPUS390XState *env, uint32_t r1, uint64_t fiba,
>                      uint32_t ar)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      qemu_mutex_lock_iothread();
>      mpcifc_service_call(cpu, r1, fiba, ar, GETPC());
> diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c
> index 145b62a7ef..9669bae393 100644
> --- a/target/s390x/mmu_helper.c
> +++ b/target/s390x/mmu_helper.c
> @@ -58,12 +58,12 @@
>  static void trigger_access_exception(CPUS390XState *env, uint32_t type,
>                                       uint32_t ilen, uint64_t tec)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      if (kvm_enabled()) {
>          kvm_s390_access_exception(cpu, type, tec);
>      } else {
> -        CPUState *cs = CPU(cpu);
> +        CPUState *cs = env_cpu(env);
>          if (type != PGM_ADDRESSING) {
>              stq_phys(cs->as, env->psa + offsetof(LowCore, trans_exc_code), 
> tec);
>          }
> @@ -185,7 +185,7 @@ static int mmu_translate_segment(CPUS390XState *env, 
> target_ulong vaddr,
>                                   target_ulong *raddr, int *flags, int rw,
>                                   bool exc)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>      uint64_t origin, offs, pt_entry;
>
>      if (st_entry & SEGMENT_ENTRY_RO) {
> @@ -214,7 +214,7 @@ static int mmu_translate_region(CPUS390XState *env, 
> target_ulong vaddr,
>                                  target_ulong *raddr, int *flags, int rw,
>                                  bool exc)
>  {
> -    CPUState *cs = CPU(s390_env_get_cpu(env));
> +    CPUState *cs = env_cpu(env);
>      uint64_t origin, offs, new_entry;
>      const int pchks[4] = {
>          PGM_SEGMENT_TRANS, PGM_REG_THIRD_TRANS,
> diff --git a/target/s390x/sigp.c b/target/s390x/sigp.c
> index c1f9245797..ea5f69d5d8 100644
> --- a/target/s390x/sigp.c
> +++ b/target/s390x/sigp.c
> @@ -454,7 +454,7 @@ int handle_sigp(CPUS390XState *env, uint8_t order, 
> uint64_t r1, uint64_t r3)
>  {
>      uint64_t *status_reg = &env->regs[r1];
>      uint64_t param = (r1 % 2) ? env->regs[r1] : env->regs[r1 + 1];
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>      S390CPU *dst_cpu = NULL;
>      int ret;
>
> @@ -492,7 +492,7 @@ int s390_cpu_restart(S390CPU *cpu)
>
>  void do_stop_interrupt(CPUS390XState *env)
>  {
> -    S390CPU *cpu = s390_env_get_cpu(env);
> +    S390CPU *cpu = env_archcpu(env);
>
>      if (s390_cpu_set_state(S390_CPU_STATE_STOPPED, cpu) == 0) {
>          qemu_system_shutdown_request(SHUTDOWN_CAUSE_GUEST_SHUTDOWN);
> --
> 2.17.1
>
>



reply via email to

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