public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug server/13279] New: gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF
@ 2011-10-10 23:30 ctice42 at gmail dot com
  2011-10-10 23:31 ` [Bug server/13279] " ctice42 at gmail dot com
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: ctice42 at gmail dot com @ 2011-10-10 23:30 UTC (permalink / raw)
  To: gdb-prs

http://sourceware.org/bugzilla/show_bug.cgi?id=13279

             Bug #: 13279
           Summary: gdbserver hangs (multi-threaded) if stepping on one
                    thread & another thread gets SIGPROF
           Product: gdb
           Version: HEAD
            Status: NEW
          Severity: normal
          Priority: P2
         Component: server
        AssignedTo: unassigned@sourceware.org
        ReportedBy: ctice42@gmail.com
    Classification: Unclassified


Created attachment 5973
  --> http://sourceware.org/bugzilla/attachment.cgi?id=5973
test program to generate multiple threads that get lots of SIGPROFs.

Running gdbserver on a multi-threaded process, whose threads receive lots of
SIGPROF signals, gdbserver hangs while single-stepping if a SIGPROF comes in
during the single-step.  This is on Linux, using current ToT gdb.

To reproduce this:

1. compile the attached test program:

   gcc -g -lpthread -lm -Wall thread-signal-test.c

2. start gdbserver on the result:

   gdbserver :1234 a.out

3. start gdb & connect to gdbserver:

   gdb
   (gdb) file a.out
   (gdb) target remote :1234

4. Set a breakpoint in 'foo' and continue:

    (gdb) b foo
    (gdb) c

5. Do a 'next':

    (gdb) n

6.  Hold down the 'enter' key to get many repeated 'nexts' quickly.

Result:  gdbserver will hang within 10-20 'next's (sometimes a few more,
sometimes a few less).

>From examining the gdbserver code, it appears that all the threads get stopped
in order to do the single-step; while preparing to do the single-step a SIGPROF
comes in on one of the other threads, in handling the SIGPROF, gdb forgets it
was in the middle of the single-step, and the single-step never gets finished
and the threads never get resumed.

I'm not very familiar with this code so I would appreciate it if someone who is
would take a look at this.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug server/13279] gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF
  2011-10-10 23:30 [Bug server/13279] New: gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF ctice42 at gmail dot com
@ 2011-10-10 23:31 ` ctice42 at gmail dot com
  2011-10-10 23:33 ` ctice42 at gmail dot com
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: ctice42 at gmail dot com @ 2011-10-10 23:31 UTC (permalink / raw)
  To: gdb-prs

http://sourceware.org/bugzilla/show_bug.cgi?id=13279

ctice42 at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pedro at codesourcery dot
                   |                            |com

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug server/13279] gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF
  2011-10-10 23:30 [Bug server/13279] New: gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF ctice42 at gmail dot com
  2011-10-10 23:31 ` [Bug server/13279] " ctice42 at gmail dot com
@ 2011-10-10 23:33 ` ctice42 at gmail dot com
  2011-10-11  3:00 ` ppluzhnikov at google dot com
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: ctice42 at gmail dot com @ 2011-10-10 23:33 UTC (permalink / raw)
  To: gdb-prs

http://sourceware.org/bugzilla/show_bug.cgi?id=13279

ctice42 at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ctice42 at gmail dot com

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug server/13279] gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF
  2011-10-10 23:30 [Bug server/13279] New: gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF ctice42 at gmail dot com
  2011-10-10 23:31 ` [Bug server/13279] " ctice42 at gmail dot com
  2011-10-10 23:33 ` ctice42 at gmail dot com
@ 2011-10-11  3:00 ` ppluzhnikov at google dot com
  2011-10-11 10:26 ` gbenson at redhat dot com
  2011-10-19 21:58 ` dje at google dot com
  4 siblings, 0 replies; 6+ messages in thread
From: ppluzhnikov at google dot com @ 2011-10-11  3:00 UTC (permalink / raw)
  To: gdb-prs

http://sourceware.org/bugzilla/show_bug.cgi?id=13279

Paul Pluzhnikov <ppluzhnikov at google dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ppluzhnikov at google dot
                   |                            |com

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug server/13279] gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF
  2011-10-10 23:30 [Bug server/13279] New: gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF ctice42 at gmail dot com
                   ` (2 preceding siblings ...)
  2011-10-11  3:00 ` ppluzhnikov at google dot com
@ 2011-10-11 10:26 ` gbenson at redhat dot com
  2011-10-19 21:58 ` dje at google dot com
  4 siblings, 0 replies; 6+ messages in thread
From: gbenson at redhat dot com @ 2011-10-11 10:26 UTC (permalink / raw)
  To: gdb-prs

http://sourceware.org/bugzilla/show_bug.cgi?id=13279

Gary Benson <gbenson at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |gbenson at redhat dot com

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug server/13279] gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF
  2011-10-10 23:30 [Bug server/13279] New: gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF ctice42 at gmail dot com
                   ` (3 preceding siblings ...)
  2011-10-11 10:26 ` gbenson at redhat dot com
@ 2011-10-19 21:58 ` dje at google dot com
  4 siblings, 0 replies; 6+ messages in thread
From: dje at google dot com @ 2011-10-19 21:58 UTC (permalink / raw)
  To: gdb-prs

http://sourceware.org/bugzilla/show_bug.cgi?id=13279

dje at google dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dje at google dot com

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-10-19 21:58 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-10-10 23:30 [Bug server/13279] New: gdbserver hangs (multi-threaded) if stepping on one thread & another thread gets SIGPROF ctice42 at gmail dot com
2011-10-10 23:31 ` [Bug server/13279] " ctice42 at gmail dot com
2011-10-10 23:33 ` ctice42 at gmail dot com
2011-10-11  3:00 ` ppluzhnikov at google dot com
2011-10-11 10:26 ` gbenson at redhat dot com
2011-10-19 21:58 ` dje at google dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).