From: "Tom Tromey (Code Review)" <gerrit@gnutoolchain-gerrit.osci.io>
To: gdb-patches@sourceware.org
Cc: Pedro Alves <palves@redhat.com>
Subject: [review v3] Introduce thread-safe way to handle SIGSEGV
Date: Fri, 22 Nov 2019 23:12:00 -0000 [thread overview]
Message-ID: <20191122231206.D350E2816F@gnutoolchain-gerrit.osci.io> (raw)
In-Reply-To: <gerrit.1571543710000.Ic832bbb033b64744e4b44f14b41db7e4168ce427@gnutoolchain-gerrit.osci.io>
Tom Tromey has posted comments on this change.
Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/171
......................................................................
Patch Set 3:
(1 comment)
| --- gdb/cp-support.c
| +++ gdb/cp-support.c
| @@ -1477,17 +1480,17 @@ static bool catch_demangler_crashes = true;
|
| /* Stack context and environment for demangler crash recovery. */
|
| -static SIGJMP_BUF gdb_demangle_jmp_buf;
| +static thread_local SIGJMP_BUF *gdb_demangle_jmp_buf;
|
| /* If nonzero, attempt to dump core from the signal handler. */
|
| -static int gdb_demangle_attempt_core_dump = 1;
| +static std::atomic<bool> gdb_demangle_attempt_core_dump;
PS3, Line 1487:
> Is there anything ever initializing this to true?
Oops, nope. I fixed this.
> Makes me ponder about a maintenance command to force a SIGSEGV.
I think there is one actually.
I don't know if I want to try to unit test this or not.
The current problem under discussion is maybe hard to check.
What would be really great is to fuzz the demangler and fix all
the bugs. Then we could ditch all of this code
|
| /* Signal handler for gdb_demangle. */
|
| static void
| gdb_demangle_signal_handler (int signo)
| {
| if (gdb_demangle_attempt_core_dump)
| {
| if (fork () == 0)
--
Gerrit-Project: binutils-gdb
Gerrit-Branch: master
Gerrit-Change-Id: Ic832bbb033b64744e4b44f14b41db7e4168ce427
Gerrit-Change-Number: 171
Gerrit-PatchSet: 3
Gerrit-Owner: Tom Tromey <tromey@sourceware.org>
Gerrit-Reviewer: Tom Tromey <tromey@sourceware.org>
Gerrit-CC: Pedro Alves <palves@redhat.com>
Gerrit-Comment-Date: Fri, 22 Nov 2019 23:12:06 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Pedro Alves <palves@redhat.com>
Gerrit-MessageType: comment
next prev parent reply other threads:[~2019-11-22 23:12 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-20 4:02 [review] " Tom Tromey (Code Review)
2019-10-30 22:54 ` [review v3] " Tom Tromey (Code Review)
2019-11-22 20:07 ` Pedro Alves (Code Review)
2019-11-22 23:12 ` Tom Tromey (Code Review) [this message]
2019-11-22 23:50 ` [review v4] " Tom Tromey (Code Review)
2019-11-26 15:58 ` Pedro Alves (Code Review)
2019-11-26 16:11 ` Tom Tromey (Code Review)
2019-11-26 16:23 ` Pedro Alves (Code Review)
2019-11-26 21:13 ` [pushed] " Sourceware to Gerrit sync (Code Review)
2019-11-26 21:14 ` Sourceware to Gerrit sync (Code Review)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191122231206.D350E2816F@gnutoolchain-gerrit.osci.io \
--to=gerrit@gnutoolchain-gerrit.osci.io \
--cc=gdb-patches@sourceware.org \
--cc=gnutoolchain-gerrit@osci.io \
--cc=palves@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox