summaryrefslogtreecommitdiff
path: root/tools/perf/builtin-top.c
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2009-11-20 20:51:24 -0200
committerIngo Molnar <mingo@elte.hu>2009-11-21 14:11:32 +0100
commit6671cb1674e69e2aba3d610714bdd3e97a7b51ff (patch)
tree61eb72c744c19086b272af4b3da21ef959ae35d5 /tools/perf/builtin-top.c
parent96200591a34f8ecb98481c626125df43a2463b55 (diff)
downloadlwn-6671cb1674e69e2aba3d610714bdd3e97a7b51ff.tar.gz
lwn-6671cb1674e69e2aba3d610714bdd3e97a7b51ff.zip
perf symbols: Remove unrelated actions from dso__load_kernel_sym
It should just load kernel symbols, not load the list of modules. There are more stuff to move to other routines, but lets do it in several steps. End goal is to be able to defer symbol table loading till we find a hit for that map address range. So that the kernel & modules are handled just like all the other DSOs in the system. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Frédéric Weisbecker <fweisbec@gmail.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Paul Mackerras <paulus@samba.org> LKML-Reference: <1258757489-5978-1-git-send-email-acme@infradead.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/builtin-top.c')
-rw-r--r--tools/perf/builtin-top.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index 6d770ac7be0b..48cc1084bc30 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -953,8 +953,16 @@ static int parse_symbols(void)
if (kernel == NULL)
return -1;
+ if (dsos__load_modules() < 0)
+ pr_debug("Couldn't read the complete list of modules, "
+ "continuing...\n");
+
+ if (dsos__load_modules_sym(symbol_filter) < 0)
+ pr_warning("Failed to read module symbols, continuing...\n");
+
if (dso__load_kernel_sym(kernel, symbol_filter, 1) <= 0)
- return -1;
+ pr_debug("Couldn't read the complete list of kernel symbols, "
+ "continuing...\n");
if (dump_symtab)
dsos__fprintf(stderr);