linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Correctly handle symbols in VDSO
@ 2014-04-01 19:15 Vladimir Nikulichev
  2014-04-07  6:14 ` Namhyung Kim
  0 siblings, 1 reply; 6+ messages in thread
From: Vladimir Nikulichev @ 2014-04-01 19:15 UTC (permalink / raw)
  To: linux-perf-users, Peter Zijlstra, Paul Mackerras, Ingo Molnar,
	Arnaldo Carvalho de Melo

pert-report doesn't resolve function names in VDSO:

$ perf report --stdio -g flat,0.0,15,callee --sort pid
...
             8.76%
                0x7fff6b1fe861
                __gettimeofday
                ACE_OS::gettimeofday()
...

In this case symbol values should be adjusted the same way as for executables, relocatable objects and prelinked libraries.

After fix:

$ perf report --stdio -g flat,0.0,15,callee --sort pid
...
             8.76%
                __vdso_gettimeofday
                __gettimeofday
                ACE_OS::gettimeofday()
...

---------------------------------------------------------------------------------------------------------------------------

perf tools: Adjust symbols in VDSO

Signed-off-by: Vladimir Nikulichev <nvs@tbricks.com>

diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c
index 3b7dbf5..9c8b23b 100644
--- a/tools/perf/util/symbol-elf.c
+++ b/tools/perf/util/symbol-elf.c
@@ -6,6 +6,7 @@
 #include <inttypes.h>

 #include "symbol.h"
+#include "vdso.h"
 #include <symbol/kallsyms.h>
 #include "debug.h"

@@ -618,6 +619,8 @@ int symsrc__init(struct symsrc *ss, struct dso *dso, const char *name,
 		GElf_Shdr shdr;
 		ss->adjust_symbols = (ehdr.e_type == ET_EXEC ||
 				ehdr.e_type == ET_REL ||
+				(dso->symsrc_filename == NULL &&
+					is_vdso_map(dso->short_name)) ||
 				elf_section_by_name(elf, &ehdr, &shdr,
 						     ".gnu.prelink_undo",
 						     NULL) != NULL);

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-04-09 16:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-01 19:15 [PATCH] Correctly handle symbols in VDSO Vladimir Nikulichev
2014-04-07  6:14 ` Namhyung Kim
2014-04-08 15:24   ` Vladimir Nikulichev
2014-04-08 15:41     ` Jiri Olsa
     [not found]       ` <A7CC2084-4F71-436C-9AEC-394F66A4981E@tbricks.com>
2014-04-09 15:35         ` Jiri Olsa
2014-04-09 16:13           ` Jiri Olsa

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).