Commit 50d912cc authored by Marc Zyngier's avatar Marc Zyngier Committed by Christoffer Dall

arm64: hyp-stub: Stop pointlessly clobbering lr

When entering the kernel hyp stub, we check whether or not we've
made it here through an HVC instruction, clobbering lr (aka x30)
in the process.

This is completely pointless, as HVC is the only way to get here
(all traps to EL2 are disabled, no interrupt override is applied).

So let's remove this bit of code whose only point is to corrupt
a valuable register.
Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
Signed-off-by: default avatarChristoffer Dall <cdall@linaro.org>
parent 9d0d4d34
...@@ -55,12 +55,6 @@ ENDPROC(__hyp_stub_vectors) ...@@ -55,12 +55,6 @@ ENDPROC(__hyp_stub_vectors)
.align 11 .align 11
el1_sync: el1_sync:
mrs x30, esr_el2
lsr x30, x30, #ESR_ELx_EC_SHIFT
cmp x30, #ESR_ELx_EC_HVC64
b.ne 9f // Not an HVC trap
cmp x0, #HVC_GET_VECTORS cmp x0, #HVC_GET_VECTORS
b.ne 1f b.ne 1f
mrs x0, vbar_el2 mrs x0, vbar_el2
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment