missing last symbol in /proc/kallsyms

From: Randy.Dunlap
Date: Mon May 03 2004 - 12:13:26 EST


(2.6.5)

I want to see _einittext as the last (non-module) symbol in
/proc/kallsyms.

_einittext should be the last kernel image symbol listed in
/proc/kallsyms AFAICT (just before module symbols begin).

It (_einittext) is the last symbol listed in my
.tmp_kallsyms2.S file, but for some reason, it's not listed
in /proc/kallsyms. I've beat my head on it for a little
while, so I'm hoping that someone else can see the problem.
(Zwane has also looked at it a bit.)

I modified scripts/kallsyms.c to print one more symbol at the
end of its list and to increase kallsyms_num_syms by 1, and
that does enable _einittext to be printed in /proc/kallsyms
(and the added symbol is not printed).

Without that change, the end of my /proc/kallsyms file contains:
c04e71d0 t af_unix_init
c04e7260 t packet_init

and the end of the corresponding .tmp_kallsyms2.S file contains:
.byte 0x00
.asciz "af_unix_init"
.byte 0x00
.asciz "packet_init"
.byte 0x00
.asciz "_einittext"

Where is the off-by-1? I want my _einittext.

--
~Randy
(Again. Sometimes I think ln -s /usr/src/linux/.config .signature) -- akpm
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/