perf probe: Support vmlinux on cwd by default
Support vmlinux on current working direcotry by default and also update file-open messages. Now perf probe searches ./vmlinux too. Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Jim Keniston <jkenisto@us.ibm.com> Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com> Cc: Christoph Hellwig <hch@infradead.org> Cc: Frank Ch. Eigler <fche@redhat.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Jason Baron <jbaron@redhat.com> Cc: K.Prasad <prasad@linux.vnet.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: systemtap <systemtap@sources.redhat.com> Cc: DLE <dle-develop@lists.sourceforge.net> LKML-Reference: <20091208220309.10142.33040.stgit@dhcp-100-2-132.bos.redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
17f88fcd66
commit
f984f03da3
|
@ -43,11 +43,12 @@
|
||||||
#include "util/probe-event.h"
|
#include "util/probe-event.h"
|
||||||
|
|
||||||
/* Default vmlinux search paths */
|
/* Default vmlinux search paths */
|
||||||
#define NR_SEARCH_PATH 3
|
#define NR_SEARCH_PATH 4
|
||||||
const char *default_search_path[NR_SEARCH_PATH] = {
|
const char *default_search_path[NR_SEARCH_PATH] = {
|
||||||
"/lib/modules/%s/build/vmlinux", /* Custom build kernel */
|
"/lib/modules/%s/build/vmlinux", /* Custom build kernel */
|
||||||
"/usr/lib/debug/lib/modules/%s/vmlinux", /* Red Hat debuginfo */
|
"/usr/lib/debug/lib/modules/%s/vmlinux", /* Red Hat debuginfo */
|
||||||
"/boot/vmlinux-debug-%s", /* Ubuntu */
|
"/boot/vmlinux-debug-%s", /* Ubuntu */
|
||||||
|
"./vmlinux", /* CWD */
|
||||||
};
|
};
|
||||||
|
|
||||||
#define MAX_PATH_LEN 256
|
#define MAX_PATH_LEN 256
|
||||||
|
@ -205,13 +206,14 @@ int cmd_probe(int argc, const char **argv, const char *prefix __used)
|
||||||
#else /* !NO_LIBDWARF */
|
#else /* !NO_LIBDWARF */
|
||||||
pr_debug("Some probes require debuginfo.\n");
|
pr_debug("Some probes require debuginfo.\n");
|
||||||
|
|
||||||
if (session.vmlinux)
|
if (session.vmlinux) {
|
||||||
|
pr_debug("Try to open %s.", session.vmlinux);
|
||||||
fd = open(session.vmlinux, O_RDONLY);
|
fd = open(session.vmlinux, O_RDONLY);
|
||||||
else
|
} else
|
||||||
fd = open_default_vmlinux();
|
fd = open_default_vmlinux();
|
||||||
if (fd < 0) {
|
if (fd < 0) {
|
||||||
if (session.need_dwarf)
|
if (session.need_dwarf)
|
||||||
die("Could not open vmlinux/module file.");
|
die("Could not open debuginfo file.");
|
||||||
|
|
||||||
pr_debug("Could not open vmlinux/module file."
|
pr_debug("Could not open vmlinux/module file."
|
||||||
" Try to use symbols.\n");
|
" Try to use symbols.\n");
|
||||||
|
|
Loading…
Reference in a new issue