summaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-script.c
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@intel.com>2013-12-04 15:16:36 +0100
committerArnaldo Carvalho de Melo <acme@redhat.com>2013-12-04 19:09:53 +0100
commita2cb3cf20e06ef119ae541c1a08dc1977f7f0fff (patch)
treefc1ed6bb6cb889ba993d5b0889f10353f4d2182c /tools/perf/builtin-script.c
parentperf symbols: Fix random fd closing with no libelf (diff)
downloadlinux-a2cb3cf20e06ef119ae541c1a08dc1977f7f0fff.tar.xz
linux-a2cb3cf20e06ef119ae541c1a08dc1977f7f0fff.zip
perf script: Do not call perf_event__preprocess_sample() twice)
The perf_event__preprocess_sample() function is called in process_sample_event(). Instead of calling it again in perf_evsel__print_ip(), pass through the resultant addr_location. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Namhyung Kim <namhyung@gmail.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Stephane Eranian <eranian@google.com> Link: http://lkml.kernel.org/r/529F3944.9050007@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/builtin-script.c')
-rw-r--r--tools/perf/builtin-script.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index 952dce979252..c555bddfccd7 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -414,7 +414,8 @@ static void print_sample_bts(union perf_event *event,
struct perf_sample *sample,
struct perf_evsel *evsel,
struct machine *machine,
- struct thread *thread)
+ struct thread *thread,
+ struct addr_location *al)
{
struct perf_event_attr *attr = &evsel->attr;
@@ -424,7 +425,7 @@ static void print_sample_bts(union perf_event *event,
printf(" ");
else
printf("\n");
- perf_evsel__print_ip(evsel, event, sample, machine,
+ perf_evsel__print_ip(evsel, sample, machine, al,
output[attr->type].print_ip_opts,
PERF_MAX_STACK_DEPTH);
}
@@ -443,7 +444,7 @@ static void print_sample_bts(union perf_event *event,
static void process_event(union perf_event *event, struct perf_sample *sample,
struct perf_evsel *evsel, struct machine *machine,
struct thread *thread,
- struct addr_location *al __maybe_unused)
+ struct addr_location *al)
{
struct perf_event_attr *attr = &evsel->attr;
@@ -458,7 +459,7 @@ static void process_event(union perf_event *event, struct perf_sample *sample,
}
if (is_bts_event(attr)) {
- print_sample_bts(event, sample, evsel, machine, thread);
+ print_sample_bts(event, sample, evsel, machine, thread, al);
return;
}
@@ -474,7 +475,7 @@ static void process_event(union perf_event *event, struct perf_sample *sample,
else
printf("\n");
- perf_evsel__print_ip(evsel, event, sample, machine,
+ perf_evsel__print_ip(evsel, sample, machine, al,
output[attr->type].print_ip_opts,
PERF_MAX_STACK_DEPTH);
}