powerpc/ftrace: Fix stack teardown in ftrace_no_trace
commit 4b3338aaa74d7d4ec5b6734dc298f0db94ec83d2 upstream. Commit41a506ef71
("powerpc/ftrace: Create a dummy stackframe to fix stack unwind") added use of a new stack frame on ftrace entry to fix stack unwind. However, the commit missed updating the offset used while tearing down the ftrace stack when ftrace is disabled. Fix the same. In addition, the commit missed saving the correct stack pointer in pt_regs. Update the same. Fixes:41a506ef71
("powerpc/ftrace: Create a dummy stackframe to fix stack unwind") Cc: stable@vger.kernel.org # v6.5+ Signed-off-by: Naveen N Rao <naveen@kernel.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://msgid.link/20231130065947.2188860-1-naveen@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
903a1a1949
commit
fd72844980
|
@ -62,7 +62,7 @@
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
/* Save previous stack pointer (r1) */
|
/* Save previous stack pointer (r1) */
|
||||||
addi r8, r1, SWITCH_FRAME_SIZE
|
addi r8, r1, SWITCH_FRAME_SIZE+STACK_FRAME_MIN_SIZE
|
||||||
PPC_STL r8, GPR1(r1)
|
PPC_STL r8, GPR1(r1)
|
||||||
|
|
||||||
.if \allregs == 1
|
.if \allregs == 1
|
||||||
|
@ -182,7 +182,7 @@ ftrace_no_trace:
|
||||||
mflr r3
|
mflr r3
|
||||||
mtctr r3
|
mtctr r3
|
||||||
REST_GPR(3, r1)
|
REST_GPR(3, r1)
|
||||||
addi r1, r1, SWITCH_FRAME_SIZE
|
addi r1, r1, SWITCH_FRAME_SIZE+STACK_FRAME_MIN_SIZE
|
||||||
mtlr r0
|
mtlr r0
|
||||||
bctr
|
bctr
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue