diff options
author | Steven Rostedt <srostedt@redhat.com> | 2010-05-21 11:49:57 -0400 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2010-05-21 11:49:57 -0400 |
commit | ff5f149b6aec8edbfa3698721667acd043009a33 (patch) | |
tree | d052553eb296dfee3f01b1cb2b717cb7ccf3127a /kernel/trace/trace_syscalls.c | |
parent | f0218b3e9974f06014b61be8987159f4a20e011e (diff) | |
parent | 580d607cd666dfabfc1c7b0fb08c8ac690c7c87f (diff) |
Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip into trace/tip/tracing/core-7
Conflicts:
include/linux/ftrace_event.h
include/trace/ftrace.h
kernel/trace/trace_event_perf.c
kernel/trace/trace_kprobe.c
kernel/trace/trace_syscalls.c
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace_syscalls.c')
-rw-r--r-- | kernel/trace/trace_syscalls.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c index 9d358301ae3e..d2c859cec9ea 100644 --- a/kernel/trace/trace_syscalls.c +++ b/kernel/trace/trace_syscalls.c | |||
@@ -488,7 +488,7 @@ static void perf_syscall_enter(void *ignore, struct pt_regs *regs, long id) | |||
488 | { | 488 | { |
489 | struct syscall_metadata *sys_data; | 489 | struct syscall_metadata *sys_data; |
490 | struct syscall_trace_enter *rec; | 490 | struct syscall_trace_enter *rec; |
491 | unsigned long flags; | 491 | struct hlist_head *head; |
492 | int syscall_nr; | 492 | int syscall_nr; |
493 | int rctx; | 493 | int rctx; |
494 | int size; | 494 | int size; |
@@ -511,15 +511,16 @@ static void perf_syscall_enter(void *ignore, struct pt_regs *regs, long id) | |||
511 | return; | 511 | return; |
512 | 512 | ||
513 | rec = (struct syscall_trace_enter *)perf_trace_buf_prepare(size, | 513 | rec = (struct syscall_trace_enter *)perf_trace_buf_prepare(size, |
514 | sys_data->enter_event->event.type, | 514 | sys_data->enter_event->event.type, regs, &rctx); |
515 | &rctx, &flags); | ||
516 | if (!rec) | 515 | if (!rec) |
517 | return; | 516 | return; |
518 | 517 | ||
519 | rec->nr = syscall_nr; | 518 | rec->nr = syscall_nr; |
520 | syscall_get_arguments(current, regs, 0, sys_data->nb_args, | 519 | syscall_get_arguments(current, regs, 0, sys_data->nb_args, |
521 | (unsigned long *)&rec->args); | 520 | (unsigned long *)&rec->args); |
522 | perf_trace_buf_submit(rec, size, rctx, 0, 1, flags, regs); | 521 | |
522 | head = per_cpu_ptr(sys_data->enter_event->perf_events, smp_processor_id()); | ||
523 | perf_trace_buf_submit(rec, size, rctx, 0, 1, regs, head); | ||
523 | } | 524 | } |
524 | 525 | ||
525 | int perf_sysenter_enable(struct ftrace_event_call *call) | 526 | int perf_sysenter_enable(struct ftrace_event_call *call) |
@@ -561,7 +562,7 @@ static void perf_syscall_exit(void *ignore, struct pt_regs *regs, long ret) | |||
561 | { | 562 | { |
562 | struct syscall_metadata *sys_data; | 563 | struct syscall_metadata *sys_data; |
563 | struct syscall_trace_exit *rec; | 564 | struct syscall_trace_exit *rec; |
564 | unsigned long flags; | 565 | struct hlist_head *head; |
565 | int syscall_nr; | 566 | int syscall_nr; |
566 | int rctx; | 567 | int rctx; |
567 | int size; | 568 | int size; |
@@ -587,15 +588,15 @@ static void perf_syscall_exit(void *ignore, struct pt_regs *regs, long ret) | |||
587 | return; | 588 | return; |
588 | 589 | ||
589 | rec = (struct syscall_trace_exit *)perf_trace_buf_prepare(size, | 590 | rec = (struct syscall_trace_exit *)perf_trace_buf_prepare(size, |
590 | sys_data->exit_event->event.type, | 591 | sys_data->exit_event->event.type, regs, &rctx); |
591 | &rctx, &flags); | ||
592 | if (!rec) | 592 | if (!rec) |
593 | return; | 593 | return; |
594 | 594 | ||
595 | rec->nr = syscall_nr; | 595 | rec->nr = syscall_nr; |
596 | rec->ret = syscall_get_return_value(current, regs); | 596 | rec->ret = syscall_get_return_value(current, regs); |
597 | 597 | ||
598 | perf_trace_buf_submit(rec, size, rctx, 0, 1, flags, regs); | 598 | head = per_cpu_ptr(sys_data->exit_event->perf_events, smp_processor_id()); |
599 | perf_trace_buf_submit(rec, size, rctx, 0, 1, regs, head); | ||
599 | } | 600 | } |
600 | 601 | ||
601 | int perf_sysexit_enable(struct ftrace_event_call *call) | 602 | int perf_sysexit_enable(struct ftrace_event_call *call) |