diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-11-29 08:01:01 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-12-01 06:05:15 -0500 |
commit | edcb98d1db7d0320d7b1920c05a4f1cafe7cb798 (patch) | |
tree | cd148f10f348ab62a47a2c1fdbc8aaa10d0d7032 | |
parent | fe3d72858c34a464976c6f8076971e2862d5c3b8 (diff) |
[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>
-rw-r--r-- | arch/mips/kernel/scall32-o32.S | 14 | ||||
-rw-r--r-- | arch/mips/kernel/scall64-64.S | 14 |
2 files changed, 2 insertions, 26 deletions
diff --git a/arch/mips/kernel/scall32-o32.S b/arch/mips/kernel/scall32-o32.S index 4dd8e8b4fbc2..2258fc69e14d 100644 --- a/arch/mips/kernel/scall32-o32.S +++ b/arch/mips/kernel/scall32-o32.S | |||
@@ -241,19 +241,7 @@ illegal_syscall: | |||
241 | sw zero, PT_R7(sp) # success | 241 | sw zero, PT_R7(sp) # success |
242 | sw v0, PT_R2(sp) # result | 242 | sw v0, PT_R2(sp) # result |
243 | 243 | ||
244 | /* Success, so skip usual error handling garbage. */ | 244 | j o32_syscall_exit # continue like a normal syscall |
245 | lw a2, TI_FLAGS($28) # syscall tracing enabled? | ||
246 | li t0, _TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT | ||
247 | and t0, a2, t0 | ||
248 | bnez t0, 1f | ||
249 | |||
250 | j o32_syscall_exit | ||
251 | |||
252 | 1: SAVE_STATIC | ||
253 | move a0, sp | ||
254 | li a1, 1 | ||
255 | jal do_syscall_trace | ||
256 | j syscall_exit | ||
257 | 245 | ||
258 | no_mem: li v0, -ENOMEM | 246 | no_mem: li v0, -ENOMEM |
259 | jr ra | 247 | jr ra |
diff --git a/arch/mips/kernel/scall64-64.S b/arch/mips/kernel/scall64-64.S index 9085838d6ce3..cb28de6a2efa 100644 --- a/arch/mips/kernel/scall64-64.S +++ b/arch/mips/kernel/scall64-64.S | |||
@@ -174,19 +174,7 @@ illegal_syscall: | |||
174 | sd zero, PT_R7(sp) # success | 174 | sd zero, PT_R7(sp) # success |
175 | sd v0, PT_R2(sp) # result | 175 | sd v0, PT_R2(sp) # result |
176 | 176 | ||
177 | /* Success, so skip usual error handling garbage. */ | 177 | j n64_syscall_exit # continue like a normal syscall |
178 | li t0, _TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT | ||
179 | LONG_L a2, TI_FLAGS($28) # syscall tracing enabled? | ||
180 | and t0, a2, t0 | ||
181 | bnez t0, 1f | ||
182 | |||
183 | j n64_syscall_exit | ||
184 | |||
185 | 1: SAVE_STATIC | ||
186 | move a0, sp | ||
187 | li a1, 1 | ||
188 | jal do_syscall_trace | ||
189 | j syscall_exit | ||
190 | 178 | ||
191 | no_mem: li v0, -ENOMEM | 179 | no_mem: li v0, -ENOMEM |
192 | jr ra | 180 | jr ra |