aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/trace
diff options
context:
space:
mode:
authorJiri Olsa <jolsa@redhat.com>2011-08-11 10:25:48 -0400
committerSteven Rostedt <rostedt@goodmis.org>2011-08-19 14:35:53 -0400
commit3f78f935e7fec3067b7990f9e4d324e1de70f79c (patch)
treea8152f5be2e5fb72b51baf872bd36ffa1d9d4dcf /kernel/trace
parent61aaef55300088e12d7f853adeea65d1aa1562db (diff)
tracing/filter: Simplify tracepoint event lookup
We dont need to perform lookup through the ftrace_events list, instead we can use the 'tp_event' field. Each perf_event contains tracepoint event field 'tp_event', which got initialized during the tracepoint event initialization. Signed-off-by: Jiri Olsa <jolsa@redhat.com> Link: http://lkml.kernel.org/r/1313072754-4620-5-git-send-email-jolsa@redhat.com Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace')
-rw-r--r--kernel/trace/trace_events_filter.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/kernel/trace/trace_events_filter.c b/kernel/trace/trace_events_filter.c
index 97b93f31884b..0948905dd39c 100644
--- a/kernel/trace/trace_events_filter.c
+++ b/kernel/trace/trace_events_filter.c
@@ -1894,17 +1894,14 @@ int ftrace_profile_set_filter(struct perf_event *event, int event_id,
1894 int err; 1894 int err;
1895 struct event_filter *filter; 1895 struct event_filter *filter;
1896 struct filter_parse_state *ps; 1896 struct filter_parse_state *ps;
1897 struct ftrace_event_call *call = NULL; 1897 struct ftrace_event_call *call;
1898 1898
1899 mutex_lock(&event_mutex); 1899 mutex_lock(&event_mutex);
1900 1900
1901 list_for_each_entry(call, &ftrace_events, list) { 1901 call = event->tp_event;
1902 if (call->event.type == event_id)
1903 break;
1904 }
1905 1902
1906 err = -EINVAL; 1903 err = -EINVAL;
1907 if (&call->list == &ftrace_events) 1904 if (!call)
1908 goto out_unlock; 1905 goto out_unlock;
1909 1906
1910 err = -EEXIST; 1907 err = -EEXIST;