|
@@ -33,9 +33,6 @@
|
|
|
#include <asm/ftrace.h>
|
|
|
#include <asm/ptrace.h>
|
|
|
|
|
|
-#undef SHOW_SYSCALLS
|
|
|
-#undef SHOW_SYSCALLS_TASK
|
|
|
-
|
|
|
/*
|
|
|
* MSR_KERNEL is > 0x10000 on 4xx/Book-E since it include MSR_CE.
|
|
|
*/
|
|
@@ -307,9 +304,6 @@ _GLOBAL(DoSyscall)
|
|
|
lwz r11,_CCR(r1) /* Clear SO bit in CR */
|
|
|
rlwinm r11,r11,0,4,2
|
|
|
stw r11,_CCR(r1)
|
|
|
-#ifdef SHOW_SYSCALLS
|
|
|
- bl do_show_syscall
|
|
|
-#endif /* SHOW_SYSCALLS */
|
|
|
#ifdef CONFIG_TRACE_IRQFLAGS
|
|
|
/* Return from syscalls can (and generally will) hard enable
|
|
|
* interrupts. You aren't supposed to call a syscall with
|
|
@@ -352,9 +346,6 @@ syscall_dotrace_cont:
|
|
|
blrl /* Call handler */
|
|
|
.globl ret_from_syscall
|
|
|
ret_from_syscall:
|
|
|
-#ifdef SHOW_SYSCALLS
|
|
|
- bl do_show_syscall_exit
|
|
|
-#endif
|
|
|
mr r6,r3
|
|
|
CURRENT_THREAD_INFO(r12, r1)
|
|
|
/* disable interrupts so current_thread_info()->flags can't change */
|
|
@@ -523,74 +514,6 @@ syscall_exit_work:
|
|
|
bl do_syscall_trace_leave
|
|
|
b ret_from_except_full
|
|
|
|
|
|
-#ifdef SHOW_SYSCALLS
|
|
|
-do_show_syscall:
|
|
|
-#ifdef SHOW_SYSCALLS_TASK
|
|
|
- lis r11,show_syscalls_task@ha
|
|
|
- lwz r11,show_syscalls_task@l(r11)
|
|
|
- cmp 0,r2,r11
|
|
|
- bnelr
|
|
|
-#endif
|
|
|
- stw r31,GPR31(r1)
|
|
|
- mflr r31
|
|
|
- lis r3,7f@ha
|
|
|
- addi r3,r3,7f@l
|
|
|
- lwz r4,GPR0(r1)
|
|
|
- lwz r5,GPR3(r1)
|
|
|
- lwz r6,GPR4(r1)
|
|
|
- lwz r7,GPR5(r1)
|
|
|
- lwz r8,GPR6(r1)
|
|
|
- lwz r9,GPR7(r1)
|
|
|
- bl printk
|
|
|
- lis r3,77f@ha
|
|
|
- addi r3,r3,77f@l
|
|
|
- lwz r4,GPR8(r1)
|
|
|
- mr r5,r2
|
|
|
- bl printk
|
|
|
- lwz r0,GPR0(r1)
|
|
|
- lwz r3,GPR3(r1)
|
|
|
- lwz r4,GPR4(r1)
|
|
|
- lwz r5,GPR5(r1)
|
|
|
- lwz r6,GPR6(r1)
|
|
|
- lwz r7,GPR7(r1)
|
|
|
- lwz r8,GPR8(r1)
|
|
|
- mtlr r31
|
|
|
- lwz r31,GPR31(r1)
|
|
|
- blr
|
|
|
-
|
|
|
-do_show_syscall_exit:
|
|
|
-#ifdef SHOW_SYSCALLS_TASK
|
|
|
- lis r11,show_syscalls_task@ha
|
|
|
- lwz r11,show_syscalls_task@l(r11)
|
|
|
- cmp 0,r2,r11
|
|
|
- bnelr
|
|
|
-#endif
|
|
|
- stw r31,GPR31(r1)
|
|
|
- mflr r31
|
|
|
- stw r3,RESULT(r1) /* Save result */
|
|
|
- mr r4,r3
|
|
|
- lis r3,79f@ha
|
|
|
- addi r3,r3,79f@l
|
|
|
- bl printk
|
|
|
- lwz r3,RESULT(r1)
|
|
|
- mtlr r31
|
|
|
- lwz r31,GPR31(r1)
|
|
|
- blr
|
|
|
-
|
|
|
-7: .string "syscall %d(%x, %x, %x, %x, %x, "
|
|
|
-77: .string "%x), current=%p\n"
|
|
|
-79: .string " -> %x\n"
|
|
|
- .align 2,0
|
|
|
-
|
|
|
-#ifdef SHOW_SYSCALLS_TASK
|
|
|
- .data
|
|
|
- .globl show_syscalls_task
|
|
|
-show_syscalls_task:
|
|
|
- .long -1
|
|
|
- .text
|
|
|
-#endif
|
|
|
-#endif /* SHOW_SYSCALLS */
|
|
|
-
|
|
|
/*
|
|
|
* The fork/clone functions need to copy the full register set into
|
|
|
* the child process. Therefore we need to save all the nonvolatile
|