summaryrefslogtreecommitdiff
path: root/arch/mips/kernel/scall64-n64.S
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2024-04-12 08:46:58 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2024-04-12 08:46:58 -0700
commite00011a146cde3a86fff96cb643f9b7dd40166ac (patch)
tree63734051c9dc0fddb6fce738ad3679ef45a4cdbd /arch/mips/kernel/scall64-n64.S
parentd1c13e80049d927c88021e3180d5103f2e6f55c4 (diff)
parent4370b673ccf240bf7587b0cb8e6726a5ccaf1f17 (diff)
Merge tag 'mips-fixes_6.9_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux
Pull MIPS fix from Thomas Bogendoerfer: "Fix for syscall_get_nr() to make it work even if tracing is disabled" * tag 'mips-fixes_6.9_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: MIPS: scall: Save thread_info.syscall unconditionally on entry
Diffstat (limited to 'arch/mips/kernel/scall64-n64.S')
-rw-r--r--arch/mips/kernel/scall64-n64.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/mips/kernel/scall64-n64.S b/arch/mips/kernel/scall64-n64.S
index e6264aa62e45..be11ea5cc67e 100644
--- a/arch/mips/kernel/scall64-n64.S
+++ b/arch/mips/kernel/scall64-n64.S
@@ -46,6 +46,8 @@ NESTED(handle_sys64, PT_SIZE, sp)
sd a3, PT_R26(sp) # save a3 for syscall restarting
+ LONG_S v0, TI_SYSCALL($28) # Store syscall number
+
li t1, _TIF_WORK_SYSCALL_ENTRY
LONG_L t0, TI_FLAGS($28) # syscall tracing enabled?
and t0, t1, t0
@@ -82,7 +84,6 @@ n64_syscall_exit:
syscall_trace_entry:
SAVE_STATIC
move a0, sp
- move a1, v0
jal syscall_trace_enter
bltz v0, 1f # seccomp failed? Skip syscall