linux/arch/arm64/kvm/hyp
Julien Thierry bfe766cf65 arm64: kvm: Prevent restoring stale PMSCR_EL1 for vcpu
When VHE is not present, KVM needs to save and restores PMSCR_EL1 when
possible. If SPE is used by the host, value of PMSCR_EL1 cannot be saved
for the guest.
If the host starts using SPE between two save+restore on the same vcpu,
restore will write the value of PMSCR_EL1 read during the first save.

Make sure __debug_save_spe_nvhe clears the value of the saved PMSCR_EL1
when the guest cannot use SPE.

Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Cc: Christoffer Dall <christoffer.dall@linaro.org>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: <stable@vger.kernel.org>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2017-12-18 10:53:22 +01:00
..
Makefile Fixes for interrupt controller emulation in ARM/ARM64 and x86, plus a one-liner 2017-11-04 11:44:55 -07:00
debug-sr.c arm64: kvm: Prevent restoring stale PMSCR_EL1 for vcpu 2017-12-18 10:53:22 +01:00
entry.S arm64: KVM: Handle async aborts delivered while at EL2 2016-09-08 12:53:00 +02:00
fpsimd.S arm64: KVM: Implement fpsimd save/restore 2015-12-14 11:30:41 +00:00
hyp-entry.S arm64: KVM: Convert __cpu_reset_hyp_mode to using __hyp_reset_vectors 2017-04-09 07:49:22 -07:00
s2-setup.c arm64: Remove the !CONFIG_ARM64_HW_AFDBM alternative code paths 2017-08-21 11:13:11 +01:00
switch.c kvm: arm64: handle single-step of hyp emulated mmio instructions 2017-11-29 18:17:47 +01:00
sysreg-sr.c arm64: KVM: VHE: Context switch MDSCR_EL1 2016-07-23 18:07:12 +02:00
tlb.c arm64: KVM: Add support for VPIPT I-caches 2017-03-20 16:25:45 +00:00