public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH tip/perf/core] perf probe: Load map before glob matching
@ 2015-05-15 12:14 Wang Nan
  2015-05-15 15:15 ` Masami Hiramatsu
  2015-05-20 12:23 ` [tip:perf/core] " tip-bot for Wang Nan
  0 siblings, 2 replies; 8+ messages in thread
From: Wang Nan @ 2015-05-15 12:14 UTC (permalink / raw)
  To: a.p.zijlstra, paulus, mingo, acme, masami.hiramatsu.pt, namhyung
  Cc: lizefan, pi3orama, linux-kernel

Commit 4c859351226c920b227fec040a3b447f0d482af3 ("perf probe: Support
glob wildcards for function name") introduces a problem:

  # /root/perf probe kmem_cache_free
 Failed to find symbol kmem_cache_free in kernel
   Error: Failed to add events.

The reason is the replacement of map__for_each_symbol_by_name() (by
map__for_each_symbol()). Although their names are similay,
map__for_each_symbol doesn't call map__load() and dso__sort_by_name()
before searching. The missing of map__load() causes this problem
because it search symbol before load dso map.

This patch ensures map__load() is called before using
map__for_each_symbol().

After this patch:

 # /root/perf probe kmem_cache_free
  Added new event:
    probe:kmem_cache_free (on kmem_cache_free%return)

You can now use it in all perf tools, such as:

        perf record -e probe:kmem_cache_free -aR sleep 1

Signed-off-by: Wang Nan <wangnan0@huawei.com>
---
 tools/perf/util/probe-event.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
index 2399dc4..1faa1e6 100644
--- a/tools/perf/util/probe-event.c
+++ b/tools/perf/util/probe-event.c
@@ -2499,6 +2499,9 @@ static int find_probe_functions(struct map *map, char *name)
 	struct symbol *sym;
 	struct rb_node *tmp;
 
+	if (map__load(map, NULL) < 0)
+		return 0;
+
 	map__for_each_symbol(map, sym, tmp) {
 		if (strglobmatch(sym->name, name))
 			found++;
-- 
1.8.3.4


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

end of thread, other threads:[~2015-05-20 12:23 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-15 12:14 [PATCH tip/perf/core] perf probe: Load map before glob matching Wang Nan
2015-05-15 15:15 ` Masami Hiramatsu
2015-05-15 20:07   ` Arnaldo Carvalho de Melo
2015-05-16 12:10     ` Masami Hiramatsu
2015-05-18 13:17       ` Arnaldo Carvalho de Melo
2015-05-18 23:41         ` Masami Hiramatsu
2015-05-19 13:46           ` Arnaldo Carvalho de Melo
2015-05-20 12:23 ` [tip:perf/core] " tip-bot for Wang Nan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox