diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2018-04-10 11:36:44 +0100 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2018-04-11 18:49:30 +0100 |
commit | 22765f30dbaf1118c6ff0fcb8b99c9f2b4d396d5 (patch) | |
tree | 5ed0419d9cada52a45b4ea2b922021980da3de72 /arch/arm64/kernel/bpi.S | |
parent | 8892b71885df7d6d7b0f491f9a8e2bb12fd4afdd (diff) |
arm64: Get rid of __smccc_workaround_1_hvc_*
The very existence of __smccc_workaround_1_hvc_* is a thinko, as
KVM will never use a HVC call to perform the branch prediction
invalidation. Even as a nested hypervisor, it would use an SMC
instruction.
Let's get rid of it.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/kernel/bpi.S')
-rw-r--r-- | arch/arm64/kernel/bpi.S | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/arch/arm64/kernel/bpi.S b/arch/arm64/kernel/bpi.S index 9404f6aecda7..279e6ced7611 100644 --- a/arch/arm64/kernel/bpi.S +++ b/arch/arm64/kernel/bpi.S @@ -74,21 +74,13 @@ ENTRY(__bp_harden_hyp_vecs_end) .popsection -.macro smccc_workaround_1 inst +ENTRY(__smccc_workaround_1_smc_start) sub sp, sp, #(8 * 4) stp x2, x3, [sp, #(8 * 0)] stp x0, x1, [sp, #(8 * 2)] mov w0, #ARM_SMCCC_ARCH_WORKAROUND_1 - \inst #0 + smc #0 ldp x2, x3, [sp, #(8 * 0)] ldp x0, x1, [sp, #(8 * 2)] add sp, sp, #(8 * 4) -.endm - -ENTRY(__smccc_workaround_1_smc_start) - smccc_workaround_1 smc ENTRY(__smccc_workaround_1_smc_end) - -ENTRY(__smccc_workaround_1_hvc_start) - smccc_workaround_1 hvc -ENTRY(__smccc_workaround_1_hvc_end) |