This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug uprobes/12851] Wrong section group usage in <sys/sdt.h>
- From: "hjl.tools at gmail dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sourceware dot org
- Date: Wed, 8 Jun 2011 15:43:49 +0000
- Subject: [Bug uprobes/12851] Wrong section group usage in <sys/sdt.h>
- Auto-submitted: auto-generated
- References: <bug-12851-6586@http.sourceware.org/bugzilla/>
http://sourceware.org/bugzilla/show_bug.cgi?id=12851
--- Comment #6 from H.J. Lu <hjl.tools at gmail dot com> 2011-06-08 15:43:19 UTC ---
(In reply to comment #5)
> (In reply to comment #4)
> > No. Linker is correct. YOU CAN'T HAVE LOCAL REFERENCES OUTSIDE OF
> > A COMDAT GROUP.
>
> I assume you are referring to gabi:
>
> "To facilitate removing a group without leaving dangling references and with
> only minimal processing of the symbol table, the following rules must be
> followed:
>
> A symbol table entry with STB_GLOBAL or STB_WEAK binding that is defined
^^^^^^^^^^^^^^^^^^^^^^^
You missed the key part.
> relative to one of a group's sections, and that is contained in a symbol table
> section that is not part of the group, must be converted to an undefined symbol
> (its section index must be changed to SHN_UNDEF) if the group members are
> discarded. References to this symbol table entry from outside the group are
> allowed."
>
>
> > Non comdat member section, .note.stapsdt, has a local
> > reference of _.stapsdt.base, which is defined in a comdat
> > section. Did you mean to put .note.stapsdt section in the same
> > comdat group as .stapsdt.base section?
>
> No. It is deliberately in its own COMDAT group to make sure there is only one
> .stapsdt.base section in the final object.
>
Then don't make symbol defined in .stapsdt.base section referenced from
other files local.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.