All of lore.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 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.