On 2/21/21 10:24 AM, Claudio Fontana wrote:
> From: Claudio Fontana <cfont...@centriq4.arch.suse.de>
> 
> KVM uses its own PMU initialization.
> 
> Signed-off-by: Claudio Fontana <cfont...@suse.de>
> ---
>  target/arm/cpu.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/target/arm/cpu.c b/target/arm/cpu.c
> index a8321fecf8..d334987cad 100644
> --- a/target/arm/cpu.c
> +++ b/target/arm/cpu.c
> @@ -1648,6 +1648,7 @@ static void arm_cpu_realizefn(DeviceState *dev, Error 
> **errp)
>          unset_feature(env, ARM_FEATURE_PMU);
>      }
>      if (arm_feature(env, ARM_FEATURE_PMU)) {
> +#ifdef CONFIG_TCG

Shouldn't this be #if !defined(CONFIG_KVM) ?

>          pmu_init(cpu);
>  
>          if (!kvm_enabled()) {

And remove this ^

> @@ -1659,6 +1660,7 @@ static void arm_cpu_realizefn(DeviceState *dev, Error 
> **errp)
>          cpu->pmu_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, arm_pmu_timer_cb,
>                  cpu);
>  #endif
> +#endif /* CONFIG_TCG */
>      } else {
>          cpu->isar.id_aa64dfr0 =
>              FIELD_DP64(cpu->isar.id_aa64dfr0, ID_AA64DFR0, PMUVER, 0);
> 


Reply via email to