This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFA] load lipthread symbols even when auto-solib-add is off


Hello,

Between having to document a side-effect of "set auto-solib-add 0"
and fixing the actual issue, I finally decided to try to fix the issue...
If you don't remember what the issue is, we started discussing it at:

        http://www.sourceware.org/ml/gdb/2006-09/msg00065.html

In short, when doing "set auto-solib-add 0", and then running
a multi-threaded program on x86-linux, the "thread" layer doesn't
get pushed on the target stack. I couldn't demonstrate a visibly
bad behavior with GDB from CVS, but with gdb-6.4, I get:

    (gdb) c
    Continuing.

    Program terminated with signal SIGTRAP, Trace/breakpoint trap.
    The program no longer exists.

After discussing this a bit with Daniel, we determined that we could
always load the symbols for libpthread. This is what this patch
implements.

2006-10-17  Joel Brobecker  <brobecker@adacore.com>

        * solib.c (libpthread_solib_p): New function.
        (solib_add): Always read the symbols from the libpthread library.

Tested on x86-linux, no regression. I verified that this also makes
GDB push the thread layer despite "set auto-solib-add 0".

Is this OK?

Thanks,
-- 
Joel

Attachment: solib.c.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]