Linux threads support in GDB

Mark Kettenis kettenis@wins.uva.nl
Mon Oct 2 05:57:00 GMT 2000


   Date: Wed, 13 Sep 2000 18:25:21 -0600 (MDT)
   From: gdb@dontknow.org

Appologies for the this late reply.  Meanwhile, the particular failing
assertions you were seeing should be gone.

   Ok, here is a test case that will reproduce the problem (to some
   extent anyways). I guess for some of my testing trying to reproduce
   the problem with something similiar I was using GDB 5.0, not the
   cvs version. However that version also has problems with the
   following code.) Normally when I run the real application I have
   SIGSTOP and SIGCONT set to nostop, which may be why it isn't seen
   until a breakpoint is used, whereas here it happens after the
   implicit SIGCONT breakpoint.

Hmm.  GDB heavily relies on SIGSTOP itself.  There is no other way to
stop threads in Linux :-(.  Due to the nature of signals (particularly
the fact that multiple signals might be merged into one), this rather
hoplessly interferes with the SIGSTOPs you're using in your program.
I really don't intend to fix this.  Sorry.

Mark

PS Please keep CC'ing the GDB mailing list.  These discussions could
be useful for other people too.


More information about the Gdb mailing list