summaryrefslogtreecommitdiff
path: root/tools/perf/util
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2016-04-11 13:53:51 (GMT)
committerArnaldo Carvalho de Melo <acme@redhat.com>2016-04-12 01:18:15 (GMT)
commitdb3617f362d7e205621c1ccc22b77d224a81ee14 (patch)
tree6633853b60e1a2143478dd59baea4f2c00bfe1e0 /tools/perf/util
parent6186de9a491af030889b372193fc9f38c248e69a (diff)
downloadlinux-db3617f362d7e205621c1ccc22b77d224a81ee14.tar.xz
perf evsel: Allow passing a left alignment when printing a symbol
For callchains, etc where we want it to align just below the syscall name, for instance, in 'perf trace' Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Wang Nan <wangnan0@huawei.com> Link: http://lkml.kernel.org/n/tip-uk9ekchd67651c625ltaur5y@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util')
-rw-r--r--tools/perf/util/session.c6
-rw-r--r--tools/perf/util/session.h2
2 files changed, 6 insertions, 2 deletions
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index bbac0ef..62b6d40 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -1954,7 +1954,7 @@ struct perf_evsel *perf_session__find_first_evtype(struct perf_session *session,
}
void perf_evsel__print_ip(struct perf_evsel *evsel, struct perf_sample *sample,
- struct addr_location *al,
+ struct addr_location *al, int left_alignment,
unsigned int print_opts, unsigned int stack_depth,
FILE *fp)
{
@@ -1992,6 +1992,8 @@ void perf_evsel__print_ip(struct perf_evsel *evsel, struct perf_sample *sample,
if (node->sym && node->sym->ignore)
goto next;
+ fprintf(fp, "%-*.*s", left_alignment, left_alignment, " ");
+
if (print_ip)
fprintf(fp, "%c%16" PRIx64, s, node->ip);
@@ -2032,6 +2034,8 @@ next:
if (al->sym && al->sym->ignore)
return;
+ fprintf(fp, "%-*.*s", left_alignment, left_alignment, " ");
+
if (print_ip)
fprintf(fp, "%16" PRIx64, sample->ip);
diff --git a/tools/perf/util/session.h b/tools/perf/util/session.h
index 0ee3d9d..a6bc4dd 100644
--- a/tools/perf/util/session.h
+++ b/tools/perf/util/session.h
@@ -105,7 +105,7 @@ struct perf_evsel *perf_session__find_first_evtype(struct perf_session *session,
unsigned int type);
void perf_evsel__print_ip(struct perf_evsel *evsel, struct perf_sample *sample,
- struct addr_location *al,
+ struct addr_location *al, int left_alignment,
unsigned int print_opts, unsigned int stack_depth,
FILE *fp);