This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] Strange stepping behaviour with ppc32 with secure PLTs
- From: PAUL GILLIAM <pgilliam at us dot ibm dot com>
- To: Alan Modra <amodra at bigpond dot net dot au>
- Cc: Mark Kettenis <mark dot kettenis at xs4all dot nl>, gdb-patches at sources dot redhat dot com
- Date: Fri, 23 Jun 2006 13:01:24 -0700
- Subject: Re: [patch] Strange stepping behaviour with ppc32 with secure PLTs
- References: <1147469935.3672.114.camel@dufur.beaverton.ibm.com> <20060512225044.GA20706@nevyn.them.org> <20060513143141.GB19700@bubble.grove.modra.org> <20060513145829.GA3721@nevyn.them.org> <20060515005619.GC19700@bubble.grove.modra.org> <20060515150854.GA28766@nevyn.them.org> <20060515234620.GG19700@bubble.grove.modra.org> <200605160634.k4G6Y49p009983@elgar.sibelius.xs4all.nl> <20060516071833.GH19700@bubble.grove.modra.org> <1148055854.315.5.camel@dufur.beaverton.ibm.com> <20060520011451.GE22757@bubble.grove.modra.org>
- Reply-to: pgilliam at us dot ibm dot com
It's been more than a month, so I thought I'd try again.
I also thought I'd try the new patch tracker:
:ADDPATCH PowerPC-32:
This patch fixes a problem gdb has 'next'ing over a call to a library
function on a ppc32 target program when secure PLT's are being used. It
implements a 'GDB only solution' of the previous discussion on the
'gdb@' mailing list.
Here is that previous discussion:
http://sourceware.org/ml/gdb/2006-05/msg00154.html
and Daniel Jacobowitz's response:
http://sourceware.org/ml/gdb/2006-05/msg00155.html
Subsequent discussion on gdb-patches begins here:
http://sourceware.org/ml/gdb-patches/2006-05/msg00270.html
And peter out here:
http://sourceware.org/ml/gdb-patches/2006-05/msg00420.html
I have attached a update of the patch, now diff'ed against current
sources.
OK to commit?
-=# Paul #=-
2006-06-23 Paul Gilliam <pgilliam@us.ibm.com>
* minsyms.c (lookup_minimal_symbol_by_pc_section): Don't ignore
minimal symbols for solib trampolines just because they're in a
different section than the PC.
Index: minsyms.c
===================================================================
RCS file: /cvs/src/src/gdb/minsyms.c,v
retrieving revision 1.45
diff -a -u -r1.45 minsyms.c
--- minsyms.c 17 Dec 2005 22:34:01 -0000 1.45
+++ minsyms.c 23 Jun 2006 20:59:34 -0000
@@ -486,6 +486,8 @@
don't fill the bfd_section member, so don't
throw away symbols on those platforms. */
&& SYMBOL_BFD_SECTION (&msymbol[hi]) != NULL
+ /* Don't ignoe symbols for solib tranpolines. */
+ && MSYMBOL_TYPE (&msymbol[hi]) != mst_solib_trampoline
&& SYMBOL_BFD_SECTION (&msymbol[hi]) != section)
--hi;