From: Pedro Alves <palves@redhat.com>
To: Tom Tromey <tromey@redhat.com>
Cc: Sergio Durigan Junior <sergiodj@redhat.com>,
Pierre Muller <pierre.muller@ics-cnrs.unistra.fr>,
"'GDB Patches'" <gdb-patches@sourceware.org>
Subject: Re: [RFC/PATCH] New convenience variable $_exitsignal
Date: Tue, 17 Sep 2013 19:02:00 -0000 [thread overview]
Message-ID: <5238A753.4070409@redhat.com> (raw)
In-Reply-To: <87bo3rxpko.fsf@fleche.redhat.com>
On 09/17/2013 07:36 PM, Tom Tromey wrote:
>>>>>> "Pedro" == Pedro Alves <palves@redhat.com> writes:
>
> Pedro> I can't say I really understand how any of that argues against my
> Pedro> original rationale for not setting $_exitsignal on corefiles (because
> Pedro> the inferior has not really exited at the point the core has been
> Pedro> generated), rather than point at implementation choices.
>
> Pedro> Now, if one were to instead argue that _user interface_ -wise, it'd
> Pedro> make sense to set $_exitsignal, because we also print
> Pedro> "Program terminated with signal", (emphasis on "terminated"), then
> Pedro> I'd agree:
>
> I may have missed part of the thread, but what is the rationale for
> being so precise here? It seems a bit pedantic to me -- which is fine
> if there is a purpose to it, but I couldn't think of one in this case.
Well, guess you've missed it, because from the beginning I had already
introduced that as pedantic:
https://sourceware.org/ml/gdb-patches/2013-06/msg00337.html
Also, if you read downthread, you'll notice that I have agreed to being lax
here, just not the presented rationale for it. If we're deciding to set the
flag for cores, then IMO, it's important such decisions are conscientiously
based on a user interface decisions, not of the style "I think it'd make
sense, but I'd have to do such and such".
> That is, gdb has a bit of information that is relevant to the user. It
> is useful to users if we expose it to them in a script-friendly way. We
> already have $_exitsignal, and differentiating between "the program
> exited with signal X" and "the program is about to exit with signal X"
> doesn't seem particularly handy.
Consider non-stop, and using gcore for snapshotting the program state.
There's no termination/exit at all. In fact, there's are potentially many
threads in the program, and each of them, if stopped, should have its own
signal number. You should be able to get at all of them with
$_siginfo.si_signo, but it's just that older kernels don't have that info.
Let's pretend kernels did always write NT_SIGINFO. Would we be arguing
for making $_exitsignal work for cores, given that $si_siginfo.si_signo would
work? It's plausible. And that's why I'm not against this at all. I just
wanted to make sure that design decision is use-case driven, rather than
because on Linux's current implementation such-and-such happens. IOW, I wanted
that to be recorded on the archives, so if even if the core formats change
in the future, we can refer back to today's decisions.
> Another consideration along these lines is that I have a branch in
> progress for "catch exit" -- it's been waiting for Sergio's work on
> these convenience variables. I think here as well $_exitsignal seems
> like a natural fit, even though the process has not technically exited
> at the catchpoint.
I see, thanks. Sounds reasonable.
--
Pedro Alves
next prev parent reply other threads:[~2013-09-17 19:02 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-16 6:30 Sergio Durigan Junior
2013-06-16 16:22 ` Doug Evans
2013-06-17 3:33 ` Eli Zaretskii
2013-06-17 7:32 ` Pierre Muller
2013-06-17 17:55 ` Sergio Durigan Junior
2013-06-19 5:26 ` Sergio Durigan Junior
2013-09-16 18:04 ` Pedro Alves
2013-09-17 0:11 ` Sergio Durigan Junior
2013-09-17 16:19 ` Pedro Alves
2013-09-17 18:39 ` Tom Tromey
2013-09-17 18:53 ` Philippe Waroquiers
2013-09-17 18:59 ` Sergio Durigan Junior
2013-09-17 18:59 ` Tom Tromey
2013-09-17 19:08 ` Pedro Alves
2013-09-17 19:02 ` Pedro Alves [this message]
2013-09-17 19:09 ` Tom Tromey
2013-07-18 16:48 ` Tom Tromey
2013-06-17 17:28 ` Pedro Alves
2013-06-17 17:31 ` Pedro Alves
2013-06-17 17:41 ` Sergio Durigan Junior
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=5238A753.4070409@redhat.com \
--to=palves@redhat.com \
--cc=gdb-patches@sourceware.org \
--cc=pierre.muller@ics-cnrs.unistra.fr \
--cc=sergiodj@redhat.com \
--cc=tromey@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