From: Sven Schnelle Date: Wed, 30 Oct 2019 08:17:18 +0000 (+0100) Subject: parisc: fix frame pointer in ftrace_regs_caller() X-Git-Tag: v5.15~5216^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3d252454edd0fe88c8250cb7f9dfb9ec12d208d7;p=platform%2Fkernel%2Flinux-starfive.git parisc: fix frame pointer in ftrace_regs_caller() The current code in ftrace_regs_caller() doesn't assign %r3 to contain the address of the current frame. This is hidden if the kernel is compiled with FRAME_POINTER, but without it just crashes because it tries to dereference an arbitrary address. Fix this by always setting %r3 to the current stack frame. Signed-off-by: Sven Schnelle Signed-off-by: Helge Deller --- diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S index 1d1d748..b96d744 100644 --- a/arch/parisc/kernel/entry.S +++ b/arch/parisc/kernel/entry.S @@ -2125,7 +2125,7 @@ ftrace_regs_caller: copy %rp, %r26 LDREG -FTRACE_FRAME_SIZE-PT_SZ_ALGN(%sp), %r25 ldo -8(%r25), %r25 - copy %r3, %arg2 + ldo -FTRACE_FRAME_SIZE(%r1), %arg2 b,l ftrace_function_trampoline, %rp copy %r1, %arg3 /* struct pt_regs */