linux/arch/arm64/kvm/hyp
Marc Zyngier 9c6c356832 arm64: KVM: VHE: Split save/restore of registers shared between guest and host
A handful of system registers are still shared between host and guest,
even while using VHE (tpidr*_el[01] and actlr_el1).

Also, some of the vcpu state (sp_el0, PC and PSTATE) must be
save/restored on entry/exit, as they are used on the host as well.

In order to facilitate the introduction of a VHE-specific sysreg
save/restore, make move the access to these registers to their
own save/restore functions.

No functional change.

Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2016-02-29 18:34:17 +00:00
..
debug-sr.c arm64: KVM: Remove weak attributes 2015-12-14 11:30:44 +00:00
entry.S arm64: KVM: Turn system register numbers to an enum 2015-12-14 11:30:43 +00:00
fpsimd.S arm64: KVM: Implement fpsimd save/restore 2015-12-14 11:30:41 +00:00
hyp-entry.S arm64: KVM: VHE: Patch out use of HVC 2016-02-29 18:34:16 +00:00
hyp.h arm64: KVM: VHE: Differenciate host/guest sysreg save/restore 2016-02-29 18:34:16 +00:00
Makefile arm64: KVM: Switch to C-based stage2 init 2016-02-29 18:34:15 +00:00
s2-setup.c arm64: KVM: Switch to C-based stage2 init 2016-02-29 18:34:15 +00:00
switch.c arm64: KVM: VHE: Differenciate host/guest sysreg save/restore 2016-02-29 18:34:16 +00:00
sysreg-sr.c arm64: KVM: VHE: Split save/restore of registers shared between guest and host 2016-02-29 18:34:17 +00:00
timer-sr.c arm64: KVM: Implement timer save/restore 2015-12-14 11:30:39 +00:00
tlb.c arm64: KVM: Remove weak attributes 2015-12-14 11:30:44 +00:00
vgic-v2-sr.c arm64: KVM: Implement vgic-v2 save/restore 2015-12-14 11:30:38 +00:00
vgic-v3-sr.c arm64: KVM: vgic-v3: Restore ICH_APR0Rn_EL2 before ICH_APR1Rn_EL2 2016-02-24 17:25:58 +00:00