From: Eli Zaretskii <eliz@gnu.org>
To: Alain Schneble <a.s@realize.ch>
Cc: emacs-devel@gnu.org
Subject: Re: SIGTRAP in kill emulation on Windows
Date: Fri, 26 Aug 2016 12:13:07 +0300 [thread overview]
Message-ID: <83shtrdhb0.fsf@gnu.org> (raw)
In-Reply-To: <86zinzhpnx.fsf@realize.ch> (message from Alain Schneble on Fri, 26 Aug 2016 10:58:58 +0200)
> From: Alain Schneble <a.s@realize.ch>
> CC: <emacs-devel@gnu.org>
> Date: Fri, 26 Aug 2016 10:58:58 +0200
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> >> Sending SIGTRAP to a process -- whether it's an unrelated, child or the
> >> calling Emacs process itself -- does not seem to have any effect as long
> >> as no debugger is attached to the receiving process.
> >
> > Do you see the same with the debugbreak program you've built earlier?
> > If not, then that program does something that your patch doesn't.
>
> Yes, debugbreak and the proposed implementation behave identically.
Then I guess that's a limitation we will have to live with. It
doesn't sound like a grave one to me: after all, what exactly SIGTRAP
does when no debugger is attached is not very important, since that is
not the primary use case for that signal, AFAIU. If a Lisp program
wants to kill the process, it doesn't need to use SIGTRAP.
> >> But with all processes I tried, none of them was ever terminated.
> >
> > That's a pity; on GNU/Linux the target program does terminate. If
> > there's nothing that can be done, we will just have to document this
> > quirk, at least for many/most programs Emacs users will meet on their
> > systems.
>
> Yes, and on GNU/Linux I observed that it prints a backtrace prior to
> termination.
That depends on ulimit and suchlikes, I think: on a GNU/Linux system I
tried that, the program was simply dumped to the shell prompt without
printing anything.
> But that's kind of irrelevant here I guess. Where would be the best
> place to document this quirk (c, signal-process, info manual)?
In the Info manual, I think.
> FWIW, there is probably something we could do about it -- query if the
> process in question is attached to a debugger. If not, we could
> terminate it.
That's for the application to decide, IMO. Signal delivery is too
low-level to replace one signal with another one.
next prev parent reply other threads:[~2016-08-26 9:13 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-25 15:08 SIGTRAP in kill emulation on Windows Alain Schneble
2016-08-25 16:18 ` Eli Zaretskii
2016-08-25 20:02 ` Alain Schneble
2016-08-25 20:09 ` Alain Schneble
2016-08-26 8:24 ` Eli Zaretskii
2016-08-26 8:58 ` Alain Schneble
2016-08-26 9:13 ` Eli Zaretskii [this message]
2016-08-26 9:31 ` Eli Zaretskii
2016-08-26 9:47 ` Alain Schneble
2016-08-26 10:19 ` Alain Schneble
2016-10-08 13:54 ` Eli Zaretskii
2016-10-08 14:36 ` Alain Schneble
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83shtrdhb0.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=a.s@realize.ch \
--cc=emacs-devel@gnu.org \
/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.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
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).