Thread (27 messages) flat view 27 messages, 3 authors, 2017-02-20
STALE3462d

[PATCH 10/20] ARM: hyp-stub: Use r1 for the soft-restart address

From: Ard Biesheuvel <hidden>
Date: 2017-02-19 08:22:23
Also in: kvm, kvmarm

On 17 February 2017 at 15:44, Marc Zyngier [off-list ref] wrote:
quoted hunk ↗ jump to hunk
It is not really obvious why the restart address should be in r3
when communicated to the hyp-stub. r1 should be perfectly adequate,
and consistent with the rest of the code.

Signed-off-by: Marc Zyngier <redacted>
---
 arch/arm/kernel/hyp-stub.S | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/arch/arm/kernel/hyp-stub.S b/arch/arm/kernel/hyp-stub.S
index 8301db963d83..8fa521bd63d2 100644
--- a/arch/arm/kernel/hyp-stub.S
+++ b/arch/arm/kernel/hyp-stub.S
@@ -214,7 +214,7 @@ __hyp_stub_do_trap:

 1:     teq     r0, #HVC_SOFT_RESTART
        bne     1f
-       bx      r3
+       bx      r1

 1:     mov     r0, #-1
@@ -258,10 +258,8 @@ ENTRY(__hyp_set_vectors)
 ENDPROC(__hyp_set_vectors)

 ENTRY(__hyp_soft_restart)
-       mov     r3, r0
        mov     r0, #HVC_SOFT_RESTART
        __HVC(0)
-       mov     r0, r3
        ret     lr
 ENDPROC(__hyp_soft_restart)
/me confused. How does the address end up in r1?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help