tracing: Use the perf recursion protection from trace event
authorFrederic Weisbecker <fweisbec@gmail.com>
Sun, 22 Nov 2009 04:26:55 +0000 (05:26 +0100)
committerIngo Molnar <mingo@elte.hu>
Sun, 22 Nov 2009 08:03:42 +0000 (09:03 +0100)
commitce71b9df8893ec954e56c5979df6da274f20f65e
tree76e8a5e33393c2f4fca4083628fc142dcbb55250
parente25613683bd5c46d3e8c8ae6416dccc9f357dcdc
tracing: Use the perf recursion protection from trace event

When we commit a trace to perf, we first check if we are
recursing in the same buffer so that we don't mess-up the buffer
with a recursing trace. But later on, we do the same check from
perf to avoid commit recursion. The recursion check is desired
early before we touch the buffer but we want to do this check
only once.

Then export the recursion protection from perf and use it from
the trace events before submitting a trace.

v2: Put appropriate Reported-by tag

Reported-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Masami Hiramatsu <mhiramat@redhat.com>
Cc: Jason Baron <jbaron@redhat.com>
LKML-Reference: <1258864015-10579-1-git-send-email-fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/linux/ftrace_event.h
include/linux/perf_event.h
include/trace/ftrace.h
kernel/perf_event.c
kernel/trace/trace_event_profile.c
kernel/trace/trace_kprobe.c
kernel/trace/trace_syscalls.c