sh: inconsistent kallsyms data
From: Paul Mundt (lethal_at_linux-sh.org)
Date: 12/31/04
- Previous message: Linus Torvalds: "Re: ptrace single-stepping change breaks Wine"
- Next in thread: pmarques_at_grupopie.com: "Re: sh: inconsistent kallsyms data"
- Reply: pmarques_at_grupopie.com: "Re: sh: inconsistent kallsyms data"
- Reply: Keith Owens: "Re: sh: inconsistent kallsyms data"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Fri, 31 Dec 2004 19:25:50 +0200 To: linux-kernel@vger.kernel.org
Building 2.6.10 for sh results in inconsistent kallsyms data. Turning on
CONFIG_KALLSYMS_ALL fixes it, as does CONFIG_KALLSYMS_EXTRA_PASS.
The symbols that seem to be problematic between the second and third
pass are all kallsyms special symbols. With only CONFIG_KALLSYMS set we
see:
--- System.map 2004-12-31 10:53:10.278567522 -0600
+++ .tmp_System.map 2004-12-31 10:53:10.347558024 -0600
@@ -6868,9 +6868,9 @@
8817c4d0 D kallsyms_addresses
88182660 D kallsyms_num_syms
88182670 D kallsyms_names
-88190630 D kallsyms_markers
-881906a0 D kallsyms_token_table
-88190b50 D kallsyms_token_index
+881906a0 D kallsyms_markers
+88190710 D kallsyms_token_table
+88190bc0 D kallsyms_token_index
88191000 D irq_desc
88191000 A __per_cpu_end
88191000 A __per_cpu_start
So for some reason we have a 0x70 variance between these, and only
these. Running with --all-symbols this seems to work fine.
Looking at scripts/kallsyms.c:symbol_valid, we see:
/* Symbols which vary between passes. Passes 1 and 2 must have
* identical symbol lists. The kallsyms_* symbols below are only added
* after pass 1, they would be included in pass 2 when --all-symbols is
* specified so exclude them to get a stable symbol list.
*/
Going by this it's not entirely clear if there is a problem or not. If
these symbols are supposed to be excluded due to being "special", then
it doesn't seem like verify_kallsyms in the top-level Makefile is doing
the right thing by just doing a blind cmp -s. This comment also seems to
be a bit outdated or just generally inaccurate, as --all-symbols isn't
the default behaviour unless CONFIG_KALLSYMS_ALL is set.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- application/pgp-signature attachment: stored
- Previous message: Linus Torvalds: "Re: ptrace single-stepping change breaks Wine"
- Next in thread: pmarques_at_grupopie.com: "Re: sh: inconsistent kallsyms data"
- Reply: pmarques_at_grupopie.com: "Re: sh: inconsistent kallsyms data"
- Reply: Keith Owens: "Re: sh: inconsistent kallsyms data"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
- Re: [patch] Real-Time Preemption, -RT-2.6.12-rc6-V0.7.48-00
... >> fix. ... addresses are not allowed to move between kallsyms
passes, ... the working set hides this peculiarity, ... send the line "unsubscribe
linux-kernel" in ... (Linux-Kernel) - Re: 2.6.8-rc2-mm1
... Took a look at this and atm compiling a sparc tool-chain to try it out. ...
because we do not do the kallsyms stuff if not configured in. ... rules in one place if
sparc needs special rules. ... send the line "unsubscribe linux-kernel" in ...
(Linux-Kernel) - Re: [RFC] kallsyms C_SYMBOL_PREFIX support
... > kallsyms does not consider SYMBOL_PREFIX of C. ... Maybe even a bigger
message, ... At least the patch seems to not affect architectures that don't use the
... send the line "unsubscribe linux-kernel" in ... (Linux-Kernel) - Re: 2.6.7-mm6 - ppc32 inconsistent kallsyms data
... > I'm getting this while building for ppc32: ... >bug, and reads
like kallsyms is a utility or part of the toolchain; ... send the line "unsubscribe
linux-kernel" in ... (Linux-Kernel) - Re: "Needlessly global functions static...."
... On Dunnersdag 17 Februar 2005 22:25, Chris Wright wrote: ... > are in kallsyms
or System.map. ... gcc -funit-at-a-time. ... send the line "unsubscribe linux-kernel"
in ... (Linux-Kernel)