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: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <cdall@linaro.org>
This commit is contained in:

committed by
Christoffer Dall

parent
9d0d4d34d9
commit
50d912cc3e
@@ -55,12 +55,6 @@ ENDPROC(__hyp_stub_vectors)
|
||||
.align 11
|
||||
|
||||
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
|
||||
b.ne 1f
|
||||
mrs x0, vbar_el2
|
||||
|
Reference in New Issue
Block a user