diff options
author | Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | 2011-03-16 19:04:59 -0400 |
---|---|---|
committer | Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> | 2011-03-16 19:04:59 -0400 |
commit | b6fe057e20fd792a5a6e16b48451de6cc6938c2b (patch) | |
tree | 99370d97ea96b3339ff7b4709d9f2774e25f9802 /arch/powerpc/kernel/ptrace.c | |
parent | ab1e23d27640b08b12d68f55add7a5314c6bc14b (diff) |
lttng-instrumentation/lttng-instrumentation-powerpc
LTTng instrumentation Powerpc
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Diffstat (limited to 'arch/powerpc/kernel/ptrace.c')
-rw-r--r-- | arch/powerpc/kernel/ptrace.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/ptrace.c b/arch/powerpc/kernel/ptrace.c index 90653699829..fb8924c5fdf 100644 --- a/arch/powerpc/kernel/ptrace.c +++ b/arch/powerpc/kernel/ptrace.c @@ -34,12 +34,16 @@ #endif #include <linux/hw_breakpoint.h> #include <linux/perf_event.h> +#include <trace/syscall.h> #include <asm/uaccess.h> #include <asm/page.h> #include <asm/pgtable.h> #include <asm/system.h> +DEFINE_TRACE(syscall_entry); +DEFINE_TRACE(syscall_exit); + /* * The parameter save area on the stack is used to store arguments being passed * to callee function and is located at fixed offset from stack pointer. @@ -1680,6 +1684,8 @@ long do_syscall_trace_enter(struct pt_regs *regs) { long ret = 0; + trace_syscall_entry(regs, regs->gpr[0]); + secure_computing(regs->gpr[0]); if (test_thread_flag(TIF_SYSCALL_TRACE) && @@ -1715,6 +1721,8 @@ void do_syscall_trace_leave(struct pt_regs *regs) { int step; + trace_syscall_exit(regs->result); + if (unlikely(current->audit_context)) audit_syscall_exit((regs->ccr&0x10000000)?AUDITSC_FAILURE:AUDITSC_SUCCESS, regs->result); |