[RFC PATCH v4 27/37] arm64: sleep: Properly set frame pointer before call

From: Chen Zhongjin
Date: Fri Apr 29 2022 - 05:48:20 EST


From: Julien Thierry <jthierry@xxxxxxxxxx>

In __cpu_suspend_enter, the FP and LR are properly saved on the stack to
form a stack frame, but the frame pointer is not set afterwards.

Have the frame pointer point to the new frame.

Signed-off-by: Julien Thierry <jthierry@xxxxxxxxxx>
---
arch/arm64/kernel/sleep.S | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm64/kernel/sleep.S b/arch/arm64/kernel/sleep.S
index 4ea9392f86e0..3bb9b4b2df08 100644
--- a/arch/arm64/kernel/sleep.S
+++ b/arch/arm64/kernel/sleep.S
@@ -91,6 +91,7 @@ SYM_FUNC_START(__cpu_suspend_enter)
str x0, [x1]
add x0, x0, #SLEEP_STACK_DATA_SYSTEM_REGS
stp x29, lr, [sp, #-16]!
+ mov x29, sp
bl cpu_do_suspend
ldp x29, lr, [sp], #16
mov x0, #1
--
2.17.1