Merge branch kvm-arm64/misc-5.19 into kvmarm-master/next
authorMarc Zyngier <maz@kernel.org>
Mon, 16 May 2022 16:48:36 +0000 (17:48 +0100)
committerMarc Zyngier <maz@kernel.org>
Mon, 16 May 2022 16:48:36 +0000 (17:48 +0100)
* kvm-arm64/misc-5.19:
  : .
  : Misc fixes and general improvements for KVMM/arm64:
  :
  : - Better handle out of sequence sysregs in the global tables
  :
  : - Remove a couple of unnecessary loads from constant pool
  :
  : - Drop unnecessary pKVM checks
  :
  : - Add all known M1 implementations to the SEIS workaround
  :
  : - Cleanup kerneldoc warnings
  : .
  KVM: arm64: vgic-v3: List M1 Pro/Max as requiring the SEIS workaround
  KVM: arm64: pkvm: Don't mask already zeroed FEAT_SVE
  KVM: arm64: pkvm: Drop unnecessary FP/SIMD trap handler
  KVM: arm64: nvhe: Eliminate kernel-doc warnings
  KVM: arm64: Avoid unnecessary absolute addressing via literals
  KVM: arm64: Print emulated register table name when it is unsorted
  KVM: arm64: Don't BUG_ON() if emulated register table is unsorted

Signed-off-by: Marc Zyngier <maz@kernel.org>
1  2 
arch/arm64/include/asm/kvm_host.h
arch/arm64/kvm/arm.c
arch/arm64/kvm/hyp/nvhe/host.S
arch/arm64/kvm/hyp/nvhe/switch.c
arch/arm64/kvm/sys_regs.c

Simple merge
Simple merge
Simple merge
index 63e77fb0898df9809d5b0df419caaddd784b2960,cba01d41c5c96d5e8972d4dd519e62c96317d224..6db801db8f271939ca7329f03ce300715e163dfd
@@@ -150,13 -120,16 +150,13 @@@ static void __hyp_vgic_restore_state(st
        }
  }
  
- /**
+ /*
   * Disable host events, enable guest events
   */
 -static bool __pmu_switch_to_guest(struct kvm_cpu_context *host_ctxt)
 +#ifdef CONFIG_HW_PERF_EVENTS
 +static bool __pmu_switch_to_guest(struct kvm_vcpu *vcpu)
  {
 -      struct kvm_host_data *host;
 -      struct kvm_pmu_events *pmu;
 -
 -      host = container_of(host_ctxt, struct kvm_host_data, host_ctxt);
 -      pmu = &host->pmu_events;
 +      struct kvm_pmu_events *pmu = &vcpu->arch.pmu.events;
  
        if (pmu->events_host)
                write_sysreg(pmu->events_host, pmcntenclr_el0);
        return (pmu->events_host || pmu->events_guest);
  }
  
- /**
+ /*
   * Disable guest events, enable host events
   */
 -static void __pmu_switch_to_host(struct kvm_cpu_context *host_ctxt)
 +static void __pmu_switch_to_host(struct kvm_vcpu *vcpu)
  {
 -      struct kvm_host_data *host;
 -      struct kvm_pmu_events *pmu;
 -
 -      host = container_of(host_ctxt, struct kvm_host_data, host_ctxt);
 -      pmu = &host->pmu_events;
 +      struct kvm_pmu_events *pmu = &vcpu->arch.pmu.events;
  
        if (pmu->events_guest)
                write_sysreg(pmu->events_guest, pmcntenclr_el0);
        if (pmu->events_host)
                write_sysreg(pmu->events_host, pmcntenset_el0);
  }
 +#else
 +#define __pmu_switch_to_guest(v)      ({ false; })
 +#define __pmu_switch_to_host(v)               do {} while (0)
 +#endif
  
- /**
+ /*
   * Handler for protected VM MSR, MRS or System instruction execution in AArch64.
   *
   * Returns true if the hypervisor has handled the exit, and control should go
Simple merge