[Ltrace-devel] FC5 ltrace sigsegvs traced process on ppc

Petr Machata pmachata at redhat.com
Tue Jun 13 15:16:32 UTC 2006


Hi

There is a bug (filed over a month, but I didn't send a ping
immediately, and got around to the bug last week) which looks
particularly persistent:

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=191318

The reproducing description is attached in bz.  During the last few days
I've been digging inside without much success.  However, found something
that looks suspicious to me:

 + binary from fc4 (i.e. the one linked on fc5, except that crti is
taken from fc4 libc).  __libc_start_main resides on 0x100108fc.  ltrace
writes breakpoint to 0x100108fc.  Cool.

 + binary from fc5. __libc_start_main resides on 0x10000760.  However
ltrace writes breakpoint to 0x10010944.  0x10010944 is the beginning of
PLT table, and ovewriting PLT with breakpoint instructions can't help.

So maybe it has something to do with PLT translation?  Indeed,
commenting out the lines 19-23 in sysdeps/linux-gnu/ppc/plt.c (the two
special cases in PLT handling that prevented PLT translation under these
circumstances) will stop the sigsegvs.  On the other hand, ltrace
doesn't trace then, so it's not much of a success.

PM




More information about the Ltrace-devel mailing list