diff options
author | David Brazdil <dbrazdil@google.com> | 2020-06-25 14:14:14 +0100 |
---|---|---|
committer | Marc Zyngier <maz@kernel.org> | 2020-07-05 18:38:21 +0100 |
commit | 09cf57eba304246141367b95c89801fd2047ac96 (patch) | |
tree | 0ab631e7d085889adb347b021b00f05465e08b35 /arch/arm64/kvm/hyp/hyp-entry.S | |
parent | e03fa29164ec1db1a81dc0168d0017a9e0366c7c (diff) | |
download | linux-09cf57eba304246141367b95c89801fd2047ac96.tar.gz linux-09cf57eba304246141367b95c89801fd2047ac96.tar.bz2 linux-09cf57eba304246141367b95c89801fd2047ac96.zip |
KVM: arm64: Split hyp/switch.c to VHE/nVHE
switch.c implements context-switching for KVM, with large parts shared between
VHE/nVHE. These common routines are moved to a header file, VHE-specific code
is moved to vhe/switch.c and nVHE-specific code is moved to nvhe/switch.c.
Previously __kvm_vcpu_run needed a different symbol name for VHE/nVHE. This
is cleaned up and the caller in arm.c simplified.
Signed-off-by: David Brazdil <dbrazdil@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20200625131420.71444-10-dbrazdil@google.com
Diffstat (limited to 'arch/arm64/kvm/hyp/hyp-entry.S')
-rw-r--r-- | arch/arm64/kvm/hyp/hyp-entry.S | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm64/kvm/hyp/hyp-entry.S b/arch/arm64/kvm/hyp/hyp-entry.S index 7e3c72fa634f..8316ee67d6a0 100644 --- a/arch/arm64/kvm/hyp/hyp-entry.S +++ b/arch/arm64/kvm/hyp/hyp-entry.S @@ -182,6 +182,7 @@ el2_error: eret sb +#ifdef __KVM_NVHE_HYPERVISOR__ SYM_FUNC_START(__hyp_do_panic) mov lr, #(PSR_F_BIT | PSR_I_BIT | PSR_A_BIT | PSR_D_BIT |\ PSR_MODE_EL1h) @@ -191,6 +192,7 @@ SYM_FUNC_START(__hyp_do_panic) eret sb SYM_FUNC_END(__hyp_do_panic) +#endif SYM_CODE_START(__hyp_panic) get_host_ctxt x0, x1 |