This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFC] Fix for mishandling of "break 'pthread_create@GLIBC_2.2.5'"
From: Daniel Jacobowitz <drow@false.org>
Date: Tue, 13 May 2008 19:02:20 -0400
> On Tue, May 13, 2008 at 03:16:26PM -0700, David Miller wrote:
> > I have a related problem right now in that the annota1 and annota3
> > testcases fail on my machine because all of the printf symbols in
> > libc are versioned and the one you get with a simple "b printf" is
> > random and determined by the order in which the symbols get added to
> > the minsym hashes:
> >
> > 0005b260 T printf@@GLIBC_2.4
> > 001425c0 T printf@GLIBC_2.0
> >
> > GDB's support for symbol versioning could definitely be improved :-)
>
> What's different for SPARC in this regard from other targets? Is it
> lack of a PLT entry (or BFD synthetic symbol for said PLT entry)?
There is a PLT entry, and when I disassemble it it looks like
"printf@plt".
But when I set a breakpoint it gets set on printf@GLIBC_2.0
instead of the correct printf@@GLIBC_2.4
All of my other systems have one non-versioned printf symbol,
so either that is the different or the ordering of the symbols.
Regardless, where does GDB try to generate the correct version
postfix string for a symbol during symbol lookup? :-)