public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug guile/17185] New: hang with libgc 7.4.0
@ 2014-07-20 10:51 dje at google dot com
  2014-07-20 10:52 ` [Bug guile/17185] " dje at google dot com
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: dje at google dot com @ 2014-07-20 10:51 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

            Bug ID: 17185
           Summary: hang with libgc 7.4.0
           Product: gdb
           Version: HEAD
            Status: NEW
          Severity: normal
          Priority: P2
         Component: guile
          Assignee: unassigned at sourceware dot org
          Reporter: dje at google dot com

gdb+guile hangs with libgc 7.4.0.
The reasons are unclear, but there is a workaround which is to set
GC_MARKERS=1.
We should enable this workaround until it's fixed.

ref: https://sourceware.org/ml/gdb-patches/2014-05/msg00132.html

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
@ 2014-07-20 10:52 ` dje at google dot com
  2014-07-26 21:51 ` cvs-commit at gcc dot gnu.org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: dje at google dot com @ 2014-07-20 10:52 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

dje at google dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ludo at gnu dot org

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
  2014-07-20 10:52 ` [Bug guile/17185] " dje at google dot com
@ 2014-07-26 21:51 ` cvs-commit at gcc dot gnu.org
  2014-07-27  3:36 ` cvs-commit at gcc dot gnu.org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2014-07-26 21:51 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

--- Comment #1 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, master has been updated
       via  74edf51613b507d1f27d66360cd8fdd8a253e88a (commit)
      from  e57e6ddc2e768323732a7eed6a5d25d3ee350638 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=74edf51613b507d1f27d66360cd8fdd8a253e88a

commit 74edf51613b507d1f27d66360cd8fdd8a253e88a
Author: Doug Evans <xdje42@gmail.com>
Date:   Sat Jul 26 14:49:04 2014 -0700

    PR 17185

    PR 17185 describes a problem with using gdb+guile with libgc 7.4.0.
    The symptom is a hang in sigsuspend.
    [The thread referenced in the PR has the details.]
    It's not clear what the right fix is, or even where the bug is yet.
    This patch applies the same workaround Guile has applied.
    There is no functionality or real performance loss with this,
    and Guile has been using it for awhile.

        * configure.ac: Add check for header gc/gc.h.
        Add check for function setenv.
        * configure: Regenerate.
        * config.in: Regenerate.
        * guile/guile.c (_initialize_guile): Add workaround for libgc 7.4.0.

-----------------------------------------------------------------------

Summary of changes:
 gdb/ChangeLog     |    9 +++++++++
 gdb/config.in     |    6 ++++++
 gdb/configure     |   26 ++++++++++++++++++++++++++
 gdb/configure.ac  |    5 +++++
 gdb/guile/guile.c |   15 +++++++++++++++
 5 files changed, 61 insertions(+), 0 deletions(-)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
  2014-07-20 10:52 ` [Bug guile/17185] " dje at google dot com
  2014-07-26 21:51 ` cvs-commit at gcc dot gnu.org
@ 2014-07-27  3:36 ` cvs-commit at gcc dot gnu.org
  2014-07-28  1:06 ` xdje42 at gmail dot com
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2014-07-27  3:36 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

--- Comment #2 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, gdb-7.8-branch has been updated
       via  b13f24b87c227ef532cac27fc81f85b60fba2832 (commit)
      from  05e19170fe1cc288974e556aa552499fde30e5ec (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=b13f24b87c227ef532cac27fc81f85b60fba2832

commit b13f24b87c227ef532cac27fc81f85b60fba2832
Author: Doug Evans <xdje42@gmail.com>
Date:   Sat Jul 26 20:29:32 2014 -0700

    PR 17185

    PR 17185 describes a problem with using gdb+guile with libgc 7.4.0.
    The symptom is a hang in sigsuspend.
    [The thread referenced in the PR has the details.]
    It's not clear what the right fix is, or even where the bug is yet.
    This patch applies the same workaround Guile has applied.
    There is no functionality or real performance loss with this,
    and Guile has been using it for awhile.

            * configure.ac: Add check for header gc/gc.h.
            Add check for function setenv.
            * configure: Regenerate.
            * config.in: Regenerate.
            * guile/guile.c (_initialize_guile): Add workaround for libgc
7.4.0.

-----------------------------------------------------------------------

Summary of changes:
 gdb/ChangeLog     |    9 +++++++++
 gdb/config.in     |    6 ++++++
 gdb/configure     |   26 ++++++++++++++++++++++++++
 gdb/configure.ac  |    5 +++++
 gdb/guile/guile.c |   15 +++++++++++++++
 5 files changed, 61 insertions(+), 0 deletions(-)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
                   ` (2 preceding siblings ...)
  2014-07-27  3:36 ` cvs-commit at gcc dot gnu.org
@ 2014-07-28  1:06 ` xdje42 at gmail dot com
  2014-08-25  9:04 ` rosslagerwall at gmail dot com
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: xdje42 at gmail dot com @ 2014-07-28  1:06 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

Doug Evans <xdje42 at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P2                          |P3
                 CC|                            |xdje42 at gmail dot com
           Severity|normal                      |minor

--- Comment #3 from Doug Evans <xdje42 at gmail dot com> ---
Downgrading priority.
Still need to understand bug better, but it's not important enough to do ahead
of others.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
                   ` (3 preceding siblings ...)
  2014-07-28  1:06 ` xdje42 at gmail dot com
@ 2014-08-25  9:04 ` rosslagerwall at gmail dot com
  2014-08-25  9:07 ` rosslagerwall at gmail dot com
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rosslagerwall at gmail dot com @ 2014-08-25  9:04 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

Ross Lagerwall <rosslagerwall at gmail dot com> changed:

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

--- Comment #4 from Ross Lagerwall <rosslagerwall at gmail dot com> ---
*** Bug 17305 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
                   ` (4 preceding siblings ...)
  2014-08-25  9:04 ` rosslagerwall at gmail dot com
@ 2014-08-25  9:07 ` rosslagerwall at gmail dot com
  2014-08-31 17:26 ` xdje42 at gmail dot com
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rosslagerwall at gmail dot com @ 2014-08-25  9:07 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

--- Comment #5 from Ross Lagerwall <rosslagerwall at gmail dot com> ---
The workaround is set for libgc 7.4.0 only.  However, I have libgc 7.4.2 and I
can't debug multi-threaded programs. Using GC_MARKERS=1 works, however, so it
seems this is still needed for libgc 7.4.2.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
                   ` (5 preceding siblings ...)
  2014-08-25  9:07 ` rosslagerwall at gmail dot com
@ 2014-08-31 17:26 ` xdje42 at gmail dot com
  2014-08-31 17:26 ` xdje42 at gmail dot com
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: xdje42 at gmail dot com @ 2014-08-31 17:26 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

Doug Evans <xdje42 at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED
           Assignee|unassigned at sourceware dot org   |xdje42 at gmail dot com

--- Comment #6 from Doug Evans <xdje42 at gmail dot com> ---
The problem is not limited to 7.4.0.
Bug 17247 has more details, so just closing this one in favor of that.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
                   ` (6 preceding siblings ...)
  2014-08-31 17:26 ` xdje42 at gmail dot com
@ 2014-08-31 17:26 ` xdje42 at gmail dot com
  2014-09-09  5:50 ` cvs-commit at gcc dot gnu.org
  2014-09-10  4:47 ` cvs-commit at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: xdje42 at gmail dot com @ 2014-08-31 17:26 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

Doug Evans <xdje42 at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|FIXED                       |DUPLICATE

--- Comment #7 from Doug Evans <xdje42 at gmail dot com> ---


*** This bug has been marked as a duplicate of bug 17247 ***

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
                   ` (7 preceding siblings ...)
  2014-08-31 17:26 ` xdje42 at gmail dot com
@ 2014-09-09  5:50 ` cvs-commit at gcc dot gnu.org
  2014-09-10  4:47 ` cvs-commit at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2014-09-09  5:50 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

--- Comment #8 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, master has been updated
       via  92d8d229d9a310ebfcfc13bf4a75a286c1add1ac (commit)
      from  837405970476d31d6b4d7774e2c914fdfa7a9930 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=92d8d229d9a310ebfcfc13bf4a75a286c1add1ac

commit 92d8d229d9a310ebfcfc13bf4a75a286c1add1ac
Author: Doug Evans <xdje42@gmail.com>
Date:   Mon Sep 8 22:45:34 2014 -0700

    Fix for PR 17247: Block SIGCHLD while initializing Guile.

    The problem here is that if a thread other than gdb's main thread
    gets a SIGCHLD (it's an asynchronous signal so the kernel will
    essentially pick a random thread) then gdb will hang if it is
    in sigsuspend when the SIGCHLD is delivered.  The other thread
    will see the signal and the sigsuspend won't "wake up".

    Guile and libgc should be blocking SIGCHLD in their threads,
    but we need to work with Guile 2.0 and libgc 7.4.
    The problem first shows up in libgc 7.4 because it is the first
    release that enables multiple marker threads by default.

    gdb/ChangeLog:

        PR 17247
        * guile.c: #include <signal.h>.
        (_initialize_guile): Block SIGCHLD while initializing Guile.

        Replaces the following, which is reverted.

        2014-07-26  Doug Evans  <xdje42@gmail.com>

        PR 17185
        * configure.ac: Add check for header gc/gc.h.
        Add check for function setenv.
        * configure: Regenerate.
        * config.in: Regenerate.
        * guile/guile.c (_initialize_guile): Add workaround for libgc 7.4.0.

-----------------------------------------------------------------------

Summary of changes:
 gdb/ChangeLog     |   17 +++++++++++++
 gdb/config.in     |    6 ----
 gdb/configure     |   26 --------------------
 gdb/configure.ac  |    5 ----
 gdb/guile/guile.c |   67 ++++++++++++++++++++++++++++------------------------
 5 files changed, 53 insertions(+), 68 deletions(-)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

* [Bug guile/17185] hang with libgc 7.4.0
  2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
                   ` (8 preceding siblings ...)
  2014-09-09  5:50 ` cvs-commit at gcc dot gnu.org
@ 2014-09-10  4:47 ` cvs-commit at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2014-09-10  4:47 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=17185

--- Comment #9 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, gdb-7.8-branch has been updated
       via  0df33300929f9b54ddcf040f9b1fe69c1a88304b (commit)
      from  0fefcb3282480d15a66fbf5daf65ef25adee9e76 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=0df33300929f9b54ddcf040f9b1fe69c1a88304b

commit 0df33300929f9b54ddcf040f9b1fe69c1a88304b
Author: Doug Evans <xdje42@gmail.com>
Date:   Tue Sep 9 21:42:20 2014 -0700

    Fix for PR 17247: Block SIGCHLD while initializing Guile.

    The problem here is that if a thread other than gdb's main thread
    gets a SIGCHLD (it's an asynchronous signal so the kernel will
    essentially pick a random thread) then gdb will hang if it is
    in sigsuspend when the SIGCHLD is delivered.  The other thread
    will see the signal and the sigsuspend won't "wake up".

    Guile and libgc should be blocking SIGCHLD in their threads,
    but we need to work with Guile 2.0 and libgc 7.4.
    The problem first shows up in libgc 7.4 because it is the first
    release that enables multiple marker threads by default.

    gdb/ChangeLog:

            PR 17247
            * guile.c: #include <signal.h>.
            (_initialize_guile): Block SIGCHLD while initializing Guile.

            Replaces the following, which is reverted.

            2014-07-26  Doug Evans  <xdje42@gmail.com>

            PR 17185
            * configure.ac: Add check for header gc/gc.h.
            Add check for function setenv.
            * configure: Regenerate.
            * config.in: Regenerate.
            * guile/guile.c (_initialize_guile): Add workaround for libgc
7.4.0.

-----------------------------------------------------------------------

Summary of changes:
 gdb/ChangeLog     |   17 +++++++++++++
 gdb/config.in     |    6 ----
 gdb/configure     |   26 --------------------
 gdb/configure.ac  |    5 ----
 gdb/guile/guile.c |   67 ++++++++++++++++++++++++++++------------------------
 5 files changed, 53 insertions(+), 68 deletions(-)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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

end of thread, other threads:[~2014-09-10  4:47 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-20 10:51 [Bug guile/17185] New: hang with libgc 7.4.0 dje at google dot com
2014-07-20 10:52 ` [Bug guile/17185] " dje at google dot com
2014-07-26 21:51 ` cvs-commit at gcc dot gnu.org
2014-07-27  3:36 ` cvs-commit at gcc dot gnu.org
2014-07-28  1:06 ` xdje42 at gmail dot com
2014-08-25  9:04 ` rosslagerwall at gmail dot com
2014-08-25  9:07 ` rosslagerwall at gmail dot com
2014-08-31 17:26 ` xdje42 at gmail dot com
2014-08-31 17:26 ` xdje42 at gmail dot com
2014-09-09  5:50 ` cvs-commit at gcc dot gnu.org
2014-09-10  4:47 ` cvs-commit at gcc dot gnu.org

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).