All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] perf tools: demangle kernel and kernel module symbols too
@ 2014-01-22 19:58 Avi Kivity
  2014-01-27 14:14 ` Avi Kivity
  2014-02-02  8:54 ` [tip:perf/urgent] perf tools: Demangle " tip-bot for Avi Kivity
  0 siblings, 2 replies; 4+ messages in thread
From: Avi Kivity @ 2014-01-22 19:58 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: linux-kernel, Peter Zijlstra, Paul Mackerras, Ingo Molnar, Avi Kivity

Some kernels contain C++ code, and thus their symbols need to be demangled.
This allows 'perf kvm top' to generate readable output.

Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
---
 tools/perf/util/symbol-elf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c
index 7594567..8f12f0f 100644
--- a/tools/perf/util/symbol-elf.c
+++ b/tools/perf/util/symbol-elf.c
@@ -922,6 +922,7 @@ int dso__load_sym(struct dso *dso, struct map *map,
 				  (u64)shdr.sh_offset);
 			sym.st_value -= shdr.sh_addr - shdr.sh_offset;
 		}
+new_symbol:
 		/*
 		 * We need to figure out if the object was created from C++ sources
 		 * DWARF DW_compile_unit has this, but we don't always have access
@@ -933,7 +934,6 @@ int dso__load_sym(struct dso *dso, struct map *map,
 			if (demangled != NULL)
 				elf_name = demangled;
 		}
-new_symbol:
 		f = symbol__new(sym.st_value, sym.st_size,
 				GELF_ST_BIND(sym.st_info), elf_name);
 		free(demangled);
-- 
1.8.4.2


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

end of thread, other threads:[~2014-02-02  8:54 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-22 19:58 [PATCH] perf tools: demangle kernel and kernel module symbols too Avi Kivity
2014-01-27 14:14 ` Avi Kivity
2014-01-27 14:48   ` Arnaldo Carvalho de Melo
2014-02-02  8:54 ` [tip:perf/urgent] perf tools: Demangle " tip-bot for Avi Kivity

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.