summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorSergey Matyukevich <sergey.matyukevich@synopsys.com>2022-04-14 11:17:22 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-04-27 13:50:49 +0200
commit852b02d1f8088cc76fa4c684e52799d4a120cf9e (patch)
treedce3de5652c795fb2cc621e2d9c1e90051b6dbb3 /arch
parent016ba7cbed571f5d8059e7096f0fa0b999338229 (diff)
ARC: entry: fix syscall_trace_exit argument
commit b1c6ecfdd06907554518ec384ce8e99889d15193 upstream. Function syscall_trace_exit expects pointer to pt_regs. However r0 is also used to keep syscall return value. Restore pointer to pt_regs before calling syscall_trace_exit. Cc: <stable@vger.kernel.org> Signed-off-by: Sergey Matyukevich <sergey.matyukevich@synopsys.com> Signed-off-by: Vineet Gupta <vgupta@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arc/kernel/entry.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arc/kernel/entry.S b/arch/arc/kernel/entry.S
index cef1d3f2656f..beb39930eedb 100644
--- a/arch/arc/kernel/entry.S
+++ b/arch/arc/kernel/entry.S
@@ -199,6 +199,7 @@ tracesys_exit:
st r0, [sp, PT_r0] ; sys call return value in pt_regs
;POST Sys Call Ptrace Hook
+ mov r0, sp ; pt_regs needed
bl @syscall_trace_exit
b ret_from_exception ; NOT ret_from_system_call at is saves r0 which
; we'd done before calling post hook above