Symbols in symtab reordered between module.kld and module.ko?
Shrikanth Kamath
shrikanth07 at gmail.com
Tue Jul 30 07:56:06 UTC 2013
I am comparing the readelf -s snapshot from module.kld and module.ko
for a module build in a cross compiler FreeBSD 10 environment,
Do the symbols in symtab get reordered between module.kld and
module.ko, as an example
readelf -s module.kld we pick 2 symbols
2651: 000b8230 74 FUNC GLOBAL DEFAULT 1 prison_equal_ip6
2652: 00030140 3318 FUNC GLOBAL DEFAULT 1 ip_output
Compare them with readelf -s from module.ko
2558: 0007a6d0 3318 FUNC GLOBAL DEFAULT 5 ip_output
2559: 001027c0 74 FUNC GLOBAL DEFAULT 5 prison_equal_ip6
So the symbol ip_output appears after prison_equal_ip6 in module.kld
but appears before it in module.ko. The problem is this is affecting
the DTrace FBT probing, running FBT probe of ip_output shows as having
arguments of prison_equal_ip6.
The way module.ko is being derived from module.kld is
ld -m elf_i386 -Bshareable --verbose -o module.ko.debug module.kld
How can I suppress this re-ordering?
More information about the freebsd-hackers
mailing list