* [PATCH] perf annotate: Support of full source file paths for srcline fix
@ 2015-11-09 15:33 Michael Petlan
2015-11-09 19:39 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 3+ messages in thread
From: Michael Petlan @ 2015-11-09 15:33 UTC (permalink / raw)
To: linux-perf-users@vger.kernel.org
The --full-paths option did not show the full source file paths
in the perf annotate tool, because the value of the option was
not propagated into the related functions.
With this patch the value of the --full-paths option is known to
the function that composes the srcline string, so it prints the
full path when necessary.
Signed-off-by: Michael Petlan <mpetlan@redhat.com>
---
tools/perf/util/annotate.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
index 0fc8d7a..cbf0fdb 100644
--- a/tools/perf/util/annotate.c
+++ b/tools/perf/util/annotate.c
@@ -1604,6 +1604,7 @@ int symbol__tty_annotate(struct symbol *sym, struct map *map,
len = symbol__size(sym);
if (print_lines) {
+ srcline_full_filename = full_paths;
symbol__get_source_line(sym, map, evsel, &source_line, len);
print_summary(&source_line, dso->long_name);
}
--
1.8.3.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] perf annotate: Support of full source file paths for srcline fix
2015-11-09 15:33 [PATCH] perf annotate: Support of full source file paths for srcline fix Michael Petlan
@ 2015-11-09 19:39 ` Arnaldo Carvalho de Melo
0 siblings, 0 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-11-09 19:39 UTC (permalink / raw)
To: Michael Petlan; +Cc: Jiri Olsa, linux-perf-users
Em Mon, Nov 09, 2015 at 04:33:31PM +0100, Michael Petlan escreveu:
>
> The --full-paths option did not show the full source file paths
> in the perf annotate tool, because the value of the option was
> not propagated into the related functions.
>
> With this patch the value of the --full-paths option is known to
> the function that composes the srcline string, so it prints the
> full path when necessary.
Thanks, applied, but you forgot to show when this happens, how it looks
before and after, I did it this time, please consider doing it this way
next time, so that I can more quickly reproduce your steps, reproduce
the problem, apply the patch, test the end result, matching your
findings.
Also please send it to me, CC ing other people that touched this code,
then CC it to linux-perf-users/lkml.
Thanks for the patch,
- Arnaldo
commit e1d13c36cd043a335de33845443f5d172f0eb543
Author: Michael Petlan <mpetlan@redhat.com>
Date: Mon Nov 9 16:33:31 2015 +0100
perf annotate: Support full source file paths for srcline fix
The --full-paths option did not show the full source file paths in the 'perf
annotate' tool, because the value of the option was not propagated into the
related functions.
With this patch the value of the --full-paths option is known to the function
that composes the srcline string, so it prints the full path when necessary.
Committer Note:
This affects annotate when the --print-line option is used:
# perf annotate -h 2>&1 | grep print-line
-l, --print-line print matching source lines (may be slow)
Looking just at the lines that should be affected by this change:
Before:
# perf annotate --print-line --full-paths --stdio fput | grep '\.[ch]:[0-9]\+'
94.44 atomic64_64.h:114
5.56 file_table.c:265
file_table.c:265 5.56 : ffffffff81219a00: callq ffffffff81769360 <__fentry__>
atomic64_64.h:114 94.44 : ffffffff81219a05: lock decq 0x38(%rdi)
After:
# perf annotate --print-line --full-paths --stdio fput | grep '\.[ch]:[0-9]\+'
94.44 /home/git/linux/arch/x86/include/asm/atomic64_64.h:114
5.56 /home/git/linux/fs/file_table.c:265
/home/git/linux/fs/file_table.c:265 5.56 : ffffffff81219a00: callq ffffffff81769360 <__fentry__>
/home/git/linux/arch/x86/include/asm/atomic64_64.h:114 94.44 : ffffffff81219a05: lock decq 0x38(%rdi)
#
Signed-off-by: Michael Petlan <mpetlan@redhat.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Link: http://permalink.gmane.org/gmane.linux.kernel.perf.user/2365
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
index f2974da0185a..1dd1949b0e79 100644
--- a/tools/perf/util/annotate.c
+++ b/tools/perf/util/annotate.c
@@ -1620,6 +1620,7 @@ int symbol__tty_annotate(struct symbol *sym, struct map *map,
len = symbol__size(sym);
if (print_lines) {
+ srcline_full_filename = full_paths;
symbol__get_source_line(sym, map, evsel, &source_line, len);
print_summary(&source_line, dso->long_name);
}
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH] perf annotate: Support of full source file paths for srcline fix
@ 2015-11-09 15:33 Michael Petlan
0 siblings, 0 replies; 3+ messages in thread
From: Michael Petlan @ 2015-11-09 15:33 UTC (permalink / raw)
To: linux-perf-users@vger.kernel.org
Hi all,
the commit a9710ba091b0dcdace90f791706e9192313ffb7c has introduced
an option for showing basename/full path of the source files in the
perf report/script output. But regarding to perf annotate, the path
is always shown as basename, since the value of the related option
is not propagated into the annotating mechanism.
This patch addresses it and enables perf-annotate to print the full
paths as well.
Tested with latest git version.
Regards,
Michael
Michael Petlan (1):
perf annotate: Support of full source file paths for srcline fix
tools/perf/util/annotate.c | 1 +
1 file changed, 1 insertion(+)
--
1.8.3.1
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-11-09 19:39 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-09 15:33 [PATCH] perf annotate: Support of full source file paths for srcline fix Michael Petlan
2015-11-09 19:39 ` Arnaldo Carvalho de Melo
-- strict thread matches above, loose matches on Subject: below --
2015-11-09 15:33 Michael Petlan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).