[tip:perf/core] perf probe: Fix to use symtab only if no debuginfo

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: tip-bot for Masami Hiramatsu
Date: Tuesday, April 27, 2010 - 5:58 am

Commit-ID:  15eca306ec95e164d05457f9f27c722f69af6d18
Gitweb:     http://git.kernel.org/tip/15eca306ec95e164d05457f9f27c722f69af6d18
Author:     Masami Hiramatsu <mhiramat@redhat.com>
AuthorDate: Wed, 21 Apr 2010 15:56:24 -0400
Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Mon, 26 Apr 2010 15:32:37 -0300

perf probe: Fix to use symtab only if no debuginfo

Fix perf probe to use symtab only if there is no debuginfo, because debuginfo
has more information than symtab.

If we can't find a function in debuginfo, we never find it in symtab.

Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com>
Reported-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
LKML-Reference: <20100421195624.24664.46214.stgit@localhost6.localdomain6>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/probe-event.c |   17 +++++++++--------
 1 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
index 4fb4803..5d3baec 100644
--- a/tools/perf/util/probe-event.c
+++ b/tools/perf/util/probe-event.c
@@ -180,15 +180,16 @@ static int try_to_find_kprobe_trace_events(struct perf_probe_event *pev,
 		return -ENOENT;
 	}
 	/* Error path : ntevs < 0 */
-	if (need_dwarf) {
-		if (ntevs == -EBADF)
-			pr_warning("No dwarf info found in the vmlinux - "
-				"please rebuild with CONFIG_DEBUG_INFO=y.\n");
-		return ntevs;
+	pr_debug("An error occurred in debuginfo analysis (%d).\n", ntevs);
+	if (ntevs == -EBADF) {
+		pr_warning("Warning: No dwarf info found in the vmlinux - "
+			"please rebuild kernel with CONFIG_DEBUG_INFO=y.\n");
+		if (!need_dwarf) {
+			pr_debug("Trying to use symbols.\nn");
+			return 0;
+		}
 	}
-	pr_debug("An error occurred in debuginfo analysis."
-		 " Try to use symbols.\n");
-	return 0;
+	return ntevs;
 }
 
 #define LINEBUF_SIZE 256
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH -tip 2/4] perf probe: Fix to use symtab only if no ..., Masami Hiramatsu, (Wed Apr 21, 12:56 pm)
Re: [PATCH -tip 2/4] perf probe: Fix to use symtab only if ..., Arnaldo Carvalho de Melo, (Mon Apr 26, 5:48 am)
Re: [PATCH -tip 2/4] perf probe: Fix to use symtab only if ..., Masami Hiramatsu, (Mon Apr 26, 11:59 am)
Re: [PATCH -tip 2/4] perf probe: Fix to use symtab only if ..., Arnaldo Carvalho de Melo, (Mon Apr 26, 12:08 pm)
Re: [PATCH -tip 2/4] perf probe: Fix to use symtab only if ..., Masami Hiramatsu, (Mon Apr 26, 12:10 pm)
[tip:perf/core] perf probe: Fix to use symtab only if no d ..., tip-bot for Masami H ..., (Tue Apr 27, 5:58 am)