diff options
Diffstat (limited to 'arch/sh/kernel/entry-common.S')
-rw-r--r-- | arch/sh/kernel/entry-common.S | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/arch/sh/kernel/entry-common.S b/arch/sh/kernel/entry-common.S index a34417c8ee0a..0bc17def55a7 100644 --- a/arch/sh/kernel/entry-common.S +++ b/arch/sh/kernel/entry-common.S | |||
@@ -211,10 +211,8 @@ syscall_exit_work: | |||
211 | nop | 211 | nop |
212 | #endif | 212 | #endif |
213 | sti | 213 | sti |
214 | ! XXX setup arguments... | ||
215 | mov r15, r4 | 214 | mov r15, r4 |
216 | mov #1, r5 | 215 | mov.l 8f, r0 ! do_syscall_trace_leave |
217 | mov.l 4f, r0 ! do_syscall_trace | ||
218 | jsr @r0 | 216 | jsr @r0 |
219 | nop | 217 | nop |
220 | bra resume_userspace | 218 | bra resume_userspace |
@@ -223,12 +221,11 @@ syscall_exit_work: | |||
223 | .align 2 | 221 | .align 2 |
224 | syscall_trace_entry: | 222 | syscall_trace_entry: |
225 | ! Yes it is traced. | 223 | ! Yes it is traced. |
226 | ! XXX setup arguments... | ||
227 | mov r15, r4 | 224 | mov r15, r4 |
228 | mov #0, r5 | 225 | mov.l 7f, r11 ! Call do_syscall_trace_enter which notifies |
229 | mov.l 4f, r11 ! Call do_syscall_trace which notifies | ||
230 | jsr @r11 ! superior (will chomp R[0-7]) | 226 | jsr @r11 ! superior (will chomp R[0-7]) |
231 | nop | 227 | nop |
228 | mov.l r0, @(OFF_R0,r15) ! Save return value | ||
232 | ! Reload R0-R4 from kernel stack, where the | 229 | ! Reload R0-R4 from kernel stack, where the |
233 | ! parent may have modified them using | 230 | ! parent may have modified them using |
234 | ! ptrace(POKEUSR). (Note that R0-R2 are | 231 | ! ptrace(POKEUSR). (Note that R0-R2 are |
@@ -389,8 +386,9 @@ syscall_exit: | |||
389 | #endif | 386 | #endif |
390 | 2: .long NR_syscalls | 387 | 2: .long NR_syscalls |
391 | 3: .long sys_call_table | 388 | 3: .long sys_call_table |
392 | 4: .long do_syscall_trace | ||
393 | #ifdef CONFIG_TRACE_IRQFLAGS | 389 | #ifdef CONFIG_TRACE_IRQFLAGS |
394 | 5: .long trace_hardirqs_on | 390 | 5: .long trace_hardirqs_on |
395 | 6: .long trace_hardirqs_off | 391 | 6: .long trace_hardirqs_off |
396 | #endif | 392 | #endif |
393 | 7: .long do_syscall_trace_enter | ||
394 | 8: .long do_syscall_trace_leave | ||