This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PR10000: emit _stp_relocate* calculations correctly for kernel/module global $data (Was: [SCM] systemtap: system-wide probe/trace tool branch, master, updated. release-0.9-238-g432f054)


> Allowing STT_OBJECTS also allowed in some odd creatures that don't seem
> to be real symbols. In my case in libc.so the following things got
> really malformed (negative) addresses leading to the infamous "error:
> integer constant is too large for ?long? type" in stap-symbols.h:
> 
>   { 0xffffffffffeda000, "__evoke_link_warning_fdetach" },
>   { 0xffffffffffeda040, "__evoke_link_warning_getwd" },

I don't know where those crazy values come from.  These symbols are local,
have actual value of zero, and are in non-SHF_ALLOC sections.

> If there is a better way to recognize these (they have a "normal"
> st_shndx as far as I can tell) please let me know.

Any symbol in a non-SHF_ALLOC section should be of no concern to you.
All sorts of symbols in non-allocated sections (e.g. in .debug_*
sections) might sometimes be in an unstripped .symtab, not just these
(which are in link-time magic sections).


Thanks,
Roland


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]