linux_dsm_epyc7002/arch/arm64/kvm/hyp
Christoffer Dall 0c389d90eb KVM: arm64: Don't save the host ELR_EL2 and SPSR_EL2 on VHE systems
On non-VHE systems we need to save the ELR_EL2 and SPSR_EL2 so that we can
return to the host in EL1 in the same state and location where we issued a
hypercall to EL2, but on VHE ELR_EL2 and SPSR_EL2 are not useful because we
never enter a guest as a result of an exception entry that would be directly
handled by KVM. The kernel entry code already saves ELR_EL1/SPSR_EL1 on
exception entry, which is enough.  Therefore, factor out these registers into
separate save/restore functions, making it easy to exclude them from the VHE
world-switch path later on.

Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Andrew Jones <drjones@redhat.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2018-03-19 10:53:16 +00:00
..
debug-sr.c KVM: arm64: Improve debug register save/restore flow 2018-03-19 10:53:12 +00:00
entry.S KVM: arm64: Avoid storing the vcpu pointer on the stack 2018-03-19 10:53:09 +00:00
fpsimd.S arm64: KVM: Implement fpsimd save/restore 2015-12-14 11:30:41 +00:00
hyp-entry.S KVM: arm64: Avoid storing the vcpu pointer on the stack 2018-03-19 10:53:09 +00:00
Makefile Fixes for interrupt controller emulation in ARM/ARM64 and x86, plus a one-liner 2017-11-04 11:44:55 -07:00
s2-setup.c KVM: arm64: Stop save/restoring host tpidr_el1 on VHE 2018-01-13 10:44:40 +00:00
switch.c KVM: arm64: Unify non-VHE host/guest sysreg save and restore functions 2018-03-19 10:53:15 +00:00
sysreg-sr.c KVM: arm64: Don't save the host ELR_EL2 and SPSR_EL2 on VHE systems 2018-03-19 10:53:16 +00:00
tlb.c KVM: arm/arm64: Detangle kvm_mmu.h from kvm_hyp.h 2018-01-08 15:20:43 +01:00