On Sat, Nov 10, 2012 at 1:04 AM, Petr Machata <[email protected]> wrote: > Sedat Dilek <[email protected]> writes: > >> On Sat, Nov 10, 2012 at 12:15 AM, Petr Machata <[email protected]> wrote: >>> Petr Machata <[email protected]> writes: >>>> diff --git a/sysdeps/linux-gnu/mipsel/plt.c >>>> b/sysdeps/linux-gnu/mipsel/plt.c >>>> index 7799dfa..7bb00e0 100644 >>>> --- a/sysdeps/linux-gnu/mipsel/plt.c >>>> +++ b/sysdeps/linux-gnu/mipsel/plt.c >>>> @@ -251,6 +251,13 @@ void arch_symbol_ret(struct Process *proc, struct >>>> library_symbol *libsym) >>>> return; >>>> } >>>> >>>> + /* For multiple symbols that resolve to the same address, we need >>>> + * to avoid adding multiple breakpoints. */ >>>> + if (dict_find_entry(proc->leader->breakpoints, resolved_addr) != >>>> NULL) { >>>> + fprintf(stderr, "%s: skip %p %s\n", __func__, resolved_addr, >>>> libsym->name); >>>> + return; >>>> + } >>>> + >>>> bp = malloc(sizeof (*bp)); >>>> if (bp == NULL) { >>>> fprintf(stderr, "Failed to allocate bp for %s\n", >>> >>> Oh wait, you need both plt.c hunks. The other one should be sans the >>> strstr("strdup") debugging code. >>> >> >> [ Correcting CC list ] >> >> Is that patch as you wanted (w/o coding-style fixes)? > > Yeah, that's what I had in mind. > > I guess we can put in the workaround then, and turn off the assert for > MIPS. Could you try whether #ifdef __mips works? >
No, that ifdef-line does not work (see attached patch + logs). - Sedat - > I'll put out 0.7.1 soon, the broken config file is really a showstopper, > so I'll be able to put in this fix as well. > > Thanks, > PM
mips-proc_c-workaround-breakpoint_for_symbol-breakage.patch
Description: Binary data
ltrace-0-7-0-L-x-main-debug71-6.txt.gz
Description: GNU Zip compressed data
ltrace-0-7-0-L-x-main-debug71-6.txt.gz.sha256sum
Description: Binary data
_______________________________________________ Ltrace-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/ltrace-devel
