linux-stable/arch/arm64/kvm
Will Deacon f85279b4bd arm64: KVM: Save/restore the host SPE state when entering/leaving a VM
The SPE buffer is virtually addressed, using the page tables of the CPU
MMU. Unusually, this means that the EL0/1 page table may be live whilst
we're executing at EL2 on non-VHE configurations. When VHE is in use,
we can use the same property to profile the guest behind its back.

This patch adds the relevant disabling and flushing code to KVM so that
the host can make use of SPE without corrupting guest memory, and any
attempts by a guest to use SPE will result in a trap.

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: Alex Bennée <alex.bennee@linaro.org>
Cc: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-02-02 18:33:01 +00:00
..
hyp arm64: KVM: Save/restore the host SPE state when entering/leaving a VM 2017-02-02 18:33:01 +00:00
debug.c arm64: KVM: Save/restore the host SPE state when entering/leaving a VM 2017-02-02 18:33:01 +00:00
guest.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
handle_exit.c arm64: Support systems without FP/ASIMD 2016-11-16 18:05:10 +00:00
hyp-init.S arm64: KVM: Simplify HYP init/teardown 2016-07-03 23:41:27 +02:00
hyp.S arm64/kvm: use alternative auto-nop 2016-09-12 10:46:07 +01:00
inject_fault.c arm64: KVM: Add Virtual Abort injection helper 2016-09-08 12:53:00 +02:00
irq.h KVM: arm/arm64: Enable irqchip routing 2016-07-22 18:52:01 +01:00
Kconfig ARM: KVM: Support vGICv3 ITS 2016-11-14 10:32:54 +00:00
Makefile arm64: KVM: Move the AArch32 conditional execution to common code 2016-09-08 12:53:00 +02:00
regmap.c arm64: KVM: 32bit GP register access 2013-06-12 16:42:14 +01:00
reset.c ARM: KVM: Support vGICv3 ITS 2016-11-14 10:32:54 +00:00
sys_regs.c arm64: KVM: pmu: Fix AArch32 cycle counter access 2016-11-18 09:02:04 +00:00
sys_regs.h arm64: KVM: Correctly handle zero register in system register accesses 2015-12-04 16:29:54 +00:00
sys_regs_generic_v8.c arm64/kvm: use {read,write}_sysreg() 2016-09-09 11:42:27 +01:00
trace.h KVM: arm64: add trace points for guest_debug debug 2015-07-21 12:50:43 +01:00