diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2009-11-20 20:51:24 -0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-11-21 14:11:32 +0100 |
commit | 6671cb1674e69e2aba3d610714bdd3e97a7b51ff (patch) | |
tree | 61eb72c744c19086b272af4b3da21ef959ae35d5 /tools/perf/builtin-top.c | |
parent | 96200591a34f8ecb98481c626125df43a2463b55 (diff) | |
download | lwn-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.c | 10 |
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); |