| From: |
| Li Zefan <lizf@cn.fujitsu.com> |
| To: |
| Ingo Molnar <mingo@elte.hu> |
| Subject: |
| [PATCH 0/6] perf trace: Add filter support |
| Date: |
| Mon, 07 Sep 2009 16:11:57 +0800 |
| Cc: |
| Peter Zijlstra <peterz@infradead.org>,
Steven Rostedt <rostedt@goodmis.org>,
Frederic Weisbecker <fweisbec@gmail.com>,
Tom Zanussi <tzanussi@gmail.com>,
Jason Baron <jbaron@redhat.com>,
LKML <linux-kernel@vger.kernel.org> |
| Archive-link: |
| Article, Thread
|
This patchset adds filter support for perf counter, so not all
profile events are recorded but only those match the filters
we set.
An example:
#./perf record -f -e irq:irq_handler_entry:irq==18:record
or
#./perf record -f -e irq:irq_handler_entry:irq==18 -R
^C
# ./perf trace
version = 0.5
perf-4303 ... irq_handler_entry: irq=18 handler=eth0
init-0 ... irq_handler_entry: irq=18 handler=eth0
init-0 ... irq_handler_entry: irq=18 handler=eth0
init-0 ... irq_handler_entry: irq=18 handler=eth0
init-0 ... irq_handler_entry: irq=18 handler=eth0
---
include/linux/ftrace_event.h | 19 +++-
include/linux/perf_counter.h | 1 +
include/linux/syscalls.h | 14 ++-
include/trace/ftrace.h | 10 +-
kernel/perf_counter.c | 40 ++++++-
kernel/trace/trace.h | 9 +-
kernel/trace/trace_event_profile.c | 18 +++
kernel/trace/trace_events_filter.c | 247 +++++++++++++++++++++---------------
kernel/trace/trace_syscalls.c | 9 +-
tools/perf/builtin-record.c | 12 ++
tools/perf/util/parse-events.c | 48 ++++++-
tools/perf/util/parse-events.h | 1 +
12 files changed, 303 insertions(+), 125 deletions(-)