aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2005-11-29 13:01:01 +0000
committerRalf Baechle <ralf@linux-mips.org>2005-12-01 11:05:15 +0000
commitedcb98d1db7d0320d7b1920c05a4f1cafe7cb798 (patch)
treecd148f10f348ab62a47a2c1fdbc8aaa10d0d7032 /arch
parentfe3d72858c34a464976c6f8076971e2862d5c3b8 (diff)
downloadlinux-edcb98d1db7d0320d7b1920c05a4f1cafe7cb798.tar.gz
[MIPS] Fix return path of sysmips(MIPS_ATOMIC_SET, ...)
The way we were doing things does no longer work on 2.6. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/kernel/scall32-o32.S14
-rw-r--r--arch/mips/kernel/scall64-64.S14
2 files changed, 2 insertions, 26 deletions
diff --git a/arch/mips/kernel/scall32-o32.S b/arch/mips/kernel/scall32-o32.S
index 4dd8e8b4fbc21..2258fc69e14d3 100644
--- a/arch/mips/kernel/scall32-o32.S
+++ b/arch/mips/kernel/scall32-o32.S
@@ -241,19 +241,7 @@ illegal_syscall:
sw zero, PT_R7(sp) # success
sw v0, PT_R2(sp) # result
- /* Success, so skip usual error handling garbage. */
- lw a2, TI_FLAGS($28) # syscall tracing enabled?
- li t0, _TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT
- and t0, a2, t0
- bnez t0, 1f
-
- j o32_syscall_exit
-
-1: SAVE_STATIC
- move a0, sp
- li a1, 1
- jal do_syscall_trace
- j syscall_exit
+ j o32_syscall_exit # continue like a normal syscall
no_mem: li v0, -ENOMEM
jr ra
diff --git a/arch/mips/kernel/scall64-64.S b/arch/mips/kernel/scall64-64.S
index 9085838d6ce3c..cb28de6a2efa7 100644
--- a/arch/mips/kernel/scall64-64.S
+++ b/arch/mips/kernel/scall64-64.S
@@ -174,19 +174,7 @@ illegal_syscall:
sd zero, PT_R7(sp) # success
sd v0, PT_R2(sp) # result
- /* Success, so skip usual error handling garbage. */
- li t0, _TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT
- LONG_L a2, TI_FLAGS($28) # syscall tracing enabled?
- and t0, a2, t0
- bnez t0, 1f
-
- j n64_syscall_exit
-
-1: SAVE_STATIC
- move a0, sp
- li a1, 1
- jal do_syscall_trace
- j syscall_exit
+ j n64_syscall_exit # continue like a normal syscall
no_mem: li v0, -ENOMEM
jr ra