diff options
author | Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> | 2015-05-08 10:03:33 +0900 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-05-08 16:26:44 -0300 |
commit | 6cfd1f6805ca0b4a341794d67eb605089435f938 (patch) | |
tree | ea3f6ce0837cc963d2309815fbfeb7a2b60520b0 /tools/perf/util | |
parent | ddb2f58f9f8febaf817496a010130f108bb9a431 (diff) | |
download | linux-6cfd1f6805ca0b4a341794d67eb605089435f938.tar.bz2 |
perf probe: Add --no-inlines option to avoid searching inline functions
Add --no-inlines(--inlines) option to avoid searching inline functions.
Searching all functions which matches glob pattern can take a long time
and find a lot of inline functions.
With this option perf-probe searches target on the non-inlined
functions.
Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Hemant Kumar <hemant@linux.vnet.ibm.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20150508010333.24812.86568.stgit@localhost.localdomain
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util')
-rw-r--r-- | tools/perf/util/probe-event.h | 1 | ||||
-rw-r--r-- | tools/perf/util/probe-finder.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/tools/perf/util/probe-event.h b/tools/perf/util/probe-event.h index db9a9cb2d2af..633aba77e0cb 100644 --- a/tools/perf/util/probe-event.h +++ b/tools/perf/util/probe-event.h @@ -10,6 +10,7 @@ struct probe_conf { bool show_ext_vars; bool force_add; + bool no_inlines; int max_probes; }; extern struct probe_conf probe_conf; diff --git a/tools/perf/util/probe-finder.c b/tools/perf/util/probe-finder.c index f4f5eed00c7d..1713421112f8 100644 --- a/tools/perf/util/probe-finder.c +++ b/tools/perf/util/probe-finder.c @@ -943,7 +943,7 @@ static int probe_point_search_cb(Dwarf_Die *sp_die, void *data) /* TODO: Check the address in this function */ param->retval = call_probe_finder(sp_die, pf); } - } else + } else if (!probe_conf.no_inlines) /* Inlined function: search instances */ param->retval = die_walk_instances(sp_die, probe_point_inline_cb, (void *)pf); |