qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH qom-cpu v2 34/40] exec: Change cpu_abort() argum


From: Andreas Färber
Subject: Re: [Qemu-devel] [PATCH qom-cpu v2 34/40] exec: Change cpu_abort() argument to CPUState
Date: Thu, 13 Mar 2014 01:59:51 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0

Am 13.03.2014 00:28, schrieb Andreas Färber:
> Am 10.03.2014 01:15, schrieb Andreas Färber:
>> Signed-off-by: Andreas Färber <address@hidden>
> 
> The m68k assert patch requires the following on top:
> 
> diff --git a/target-m68k/translate.c b/target-m68k/translate.c
> index dff1e58..cd66289 100644
> --- a/target-m68k/translate.c
> +++ b/target-m68k/translate.c
> @@ -2084,12 +2084,14 @@ DISAS_INSN(wddata)
> 
>  DISAS_INSN(wdebug)
>  {
> +    M68kCPU *cpu = m68k_env_get_cpu(env);
> +
>      if (IS_USER(s)) {
>          gen_exception(s, s->pc - 2, EXCP_PRIVILEGE);
>          return;
>      }
>      /* TODO: Implement wdebug.  */
> -    cpu_abort(env, "WDEBUG not implemented");
> +    cpu_abort(CPU(cpu), "WDEBUG not implemented");
>  }
> 
>  DISAS_INSN(trap)
> @@ -2463,14 +2465,18 @@ DISAS_INSN(fbcc)
> 
>  DISAS_INSN(frestore)
>  {
> +    M68kCPU *cpu = m68k_env_get_cpu(env);
> +
>      /* TODO: Implement frestore.  */
> -    cpu_abort(env, "FRESTORE not implemented");
> +    cpu_abort(CPU(cpu), "FRESTORE not implemented");
>  }
> 
>  DISAS_INSN(fsave)
>  {
> +    M68kCPU *cpu = m68k_env_get_cpu(env);
> +
>      /* TODO: Implement fsave.  */
> -    cpu_abort(env, "FSAVE not implemented");
> +    cpu_abort(CPU(cpu), "FSAVE not implemented");
>  }
> 
>  static inline TCGv gen_mac_extract_word(DisasContext *s, TCGv val, int
> upper)

Further needs:

diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c
index 81ec959..9974b10 100644
--- a/target-ppc/kvm.c
+++ b/target-ppc/kvm.c
@@ -1504,7 +1504,6 @@ int kvmppc_get_hypercall(CPUPPCState *env, uint8_t
*buf, i
nt buf_len)

 void kvmppc_set_papr(PowerPCCPU *cpu)
 {
-    CPUPPCState *env = &cpu->env;
     CPUState *cs = CPU(cpu);
     struct kvm_enable_cap cap = {};
     int ret;
@@ -1513,7 +1512,7 @@ void kvmppc_set_papr(PowerPCCPU *cpu)
     ret = kvm_vcpu_ioctl(cs, KVM_ENABLE_CAP, &cap);

     if (ret) {
-        cpu_abort(env, "This KVM version does not support PAPR\n");
+        cpu_abort(cs, "This KVM version does not support PAPR\n");
     }

     /* Update the capability flag so we sync the right information
@@ -1523,7 +1522,6 @@ void kvmppc_set_papr(PowerPCCPU *cpu)

 void kvmppc_set_mpic_proxy(PowerPCCPU *cpu, int mpic_proxy)
 {
-    CPUPPCState *env = &cpu->env;
     CPUState *cs = CPU(cpu);
     struct kvm_enable_cap cap = {};
     int ret;
@@ -1533,7 +1531,7 @@ void kvmppc_set_mpic_proxy(PowerPCCPU *cpu, int
mpic_proxy)
     ret = kvm_vcpu_ioctl(cs, KVM_ENABLE_CAP, &cap);

     if (ret && mpic_proxy) {
-        cpu_abort(env, "This KVM version does not support EPR\n");
+        cpu_abort(cs, "This KVM version does not support EPR\n");
     }
 }


Andreas

-- 
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]