From: "Edgar E. Iglesias" <[email protected]> Hi,
This is the series I've been hacking on. There are still issues with threaded apps. There are at least two issues: 1. Singlestepping over breakpoints is not really thread safe, IIUC. 2. Waiting until function return until adding breakpoints to resolved addresses is to late and not thread safe. I plan to take a closer look at the watchpoint approach to eliminate nr 2 as Petr M suggested. Any suggestions on howto solve issue nr 1 are also wellcome. Leaving the breakpoint inplace and emulating the insn might be a last resort, but quite involved... I've tested this on a MIPSEL 32R2 o32 and it seems to work fine for single threaded apps. I've also ran the ltrace testsuite with the patches on an x86_64. I'll be happy to fix any comments you might have! Cheers, Edgar Edgar E. Iglesias (8): mips: Map the various mips archs as mips/mipsel proc: Add missing sym2addr mappings Break out the symbol info gathering into a backend call Add LS_TOPLT_GOTONLY mipsel: Conditionalize GOT indirection in sym2addr mipsel: Add mips specific symbol info loading mipsel: Singlestep over breakpoints mipsel: Update breakpoints when functions return backend.h | 19 ++++ configure.ac | 2 + handle_event.c | 11 ++- library.h | 1 + ltrace-elf.c | 54 ++++++---- proc.c | 19 +++- sysdeps/linux-gnu/mipsel/arch.h | 20 ++++ sysdeps/linux-gnu/mipsel/plt.c | 206 ++++++++++++++++++++++++++++++++++++++ sysdeps/linux-gnu/mipsel/trace.c | 164 ++++++++++++++++++++++++++++++ sysdeps/linux-gnu/trace.c | 2 +- 10 files changed, 474 insertions(+), 24 deletions(-) -- 1.7.8.6 _______________________________________________ Ltrace-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/ltrace-devel
