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