GNU bug report logs -
#53013
29.0.50; xwidget-webkit: SIGCHLD not being caught after xwidget-webkit buffer killed
Previous Next
Reported by: Akira Kyle <akira <at> akirakyle.com>
Date: Tue, 4 Jan 2022 21:11:02 UTC
Severity: normal
Found in version 29.0.50
Fixed in version 29.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 53013 in the body.
You can then email your comments to 53013 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Tue, 04 Jan 2022 21:11:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Akira Kyle <akira <at> akirakyle.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Tue, 04 Jan 2022 21:11:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
In GNU Emacs 29.0.50 (build 1, aarch64-unknown-linux-gnu, GTK+ Version 3.24.30, cairo version 1.16.0)
Repository revision: ab5ee3e29e916d4009b301841e9780aad564a6a0
Repository branch: master
System Description: NixOS 22.05 (Quokka)
Configured using:
'configure
--prefix=/nix/store/0fiqa453abl4c1c28g0baqs9s274s7ff-emacs-pgtkgcc-20220103.0
--disable-build-details --with-modules --with-x-toolkit=gtk3
--with-cairo --with-xwidgets --with-native-compilation --with-pgtk'
Also tested on debian under GNOME (wayland) with the same configuration.
Steps to reproduce in emacs -Q:
- M-x xwidget-webkit-browse-url RET http://xkcd.com RET
- C-x k RET
- M-: (start-process "my-process" "foo" "echo" "hi")
No "Process my-process finished" line appears in buffer "foo" indicating
that emacs didn't catch SIGCHLD.
I suspect that a call to catch_child_signal might also be needed in
kill_xwidget so emacs reinstalls its signal handler.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Wed, 05 Jan 2022 02:41:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 53013 <at> debbugs.gnu.org (full text, mbox):
Akira Kyle <akira <at> akirakyle.com> writes:
> I suspect that a call to catch_child_signal might also be needed in
> kill_xwidget so emacs reinstalls its signal handler.
Should be fixed now on master.
Making kill_xwidget call catch_child_signal wasn't enough, since GLib
was resetting SIGCHLD inside a timer set by WebKitGTK and about a dozen
other places as well, hence the very ugly (and unreliable) hack on
master.
It's a temporary solution that just motivated me to look at making Emacs
use GLib for handling subprocesses.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Wed, 05 Jan 2022 05:05:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 53013 <at> debbugs.gnu.org (full text, mbox):
On Tue, Jan 4, 2022 at 7:40 PM Po Lu <luangruo <at> yahoo.com> wrote:
>
> > I suspect that a call to catch_child_signal might also be needed in
> > kill_xwidget so emacs reinstalls its signal handler.
>
> Should be fixed now on master.
>
It looks like SIGCHLD is now being caught by emacs for me. Thanks!
> Making kill_xwidget call catch_child_signal wasn't enough, since GLib
> was resetting SIGCHLD inside a timer set by WebKitGTK and about a dozen
> other places as well, hence the very ugly (and unreliable) hack on
> master.
>
> It's a temporary solution that just motivated me to look at making Emacs
> use GLib for handling subprocesses.
Indeed GLib does appear to want to always own the signal handling and
I imagine the current hacks of trying to constantly reinstall the
handler are also potentially brittle solutions to the problem.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Fri, 07 Jan 2022 04:22:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 53013 <at> debbugs.gnu.org (full text, mbox):
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
Emacs does a lot of special things in handling subprocesses,
and that is a very important feature.
On general principles, I think that means we should perfect our own code
rather than try to use code maintained by another project for this.
--
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Fri, 07 Jan 2022 04:41:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 53013 <at> debbugs.gnu.org (full text, mbox):
Richard Stallman <rms <at> gnu.org> writes:
> Emacs does a lot of special things in handling subprocesses, and that
> is a very important feature.
>
> On general principles, I think that means we should perfect our own
> code rather than try to use code maintained by another project for
> this.
I'm not talking about replacing Emacs's own code with GLib's system
entirely, but just relying on GLib to tell us when a process exits,
instead of installing our own SIGCHLD handler.
Thanks.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Sat, 08 Jan 2022 04:00:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 53013 <at> debbugs.gnu.org (full text, mbox):
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> I'm not talking about replacing Emacs's own code with GLib's system
> entirely, but just relying on GLib to tell us when a process exits,
> instead of installing our own SIGCHLD handler.
I don't know enough to have an opinion in detail, but on general
principles I suggest that we fix our own code. Depending on an
external package for little bits of Emacs is asking for trouble. Our
code can have bugs, and the Glib code can have bugs, but if our
code has bugs, there is no obstacle to our using a fixed version.
--
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Sat, 08 Jan 2022 04:38:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 53013 <at> debbugs.gnu.org (full text, mbox):
Richard Stallman <rms <at> gnu.org> writes:
> I don't know enough to have an opinion in detail, but on general
> principles I suggest that we fix our own code. Depending on an
> external package for little bits of Emacs is asking for trouble. Our
> code can have bugs, and the Glib code can have bugs, but if our
> code has bugs, there is no obstacle to our using a fixed version.
I'm only proposing to use GLib's code in Emacs builds that have GLib.
(Those which use GTK+, for example, must have GLib.)
The reason is that GLib resets the Emacs SIGCHLD handler at random
spots, which is very difficult to work around.
Thanks.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Sun, 09 Jan 2022 03:55:02 GMT)
Full text and
rfc822 format available.
Message #26 received at 53013 <at> debbugs.gnu.org (full text, mbox):
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> I'm only proposing to use GLib's code in Emacs builds that have GLib.
> (Those which use GTK+, for example, must have GLib.)
Maybe you're right. I am no expert on this so I will leave it to others.
--
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Fri, 14 Jan 2022 08:20:03 GMT)
Full text and
rfc822 format available.
Message #29 received at 53013 <at> debbugs.gnu.org (full text, mbox):
Akira Kyle <akira <at> akirakyle.com> writes:
> It looks like SIGCHLD is now being caught by emacs for me. Thanks!
I'm therefore closing this bug report.
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
bug marked as fixed in version 29.1, send any further explanations to
53013 <at> debbugs.gnu.org and Akira Kyle <akira <at> akirakyle.com>
Request was from
Lars Ingebrigtsen <larsi <at> gnus.org>
to
control <at> debbugs.gnu.org
.
(Fri, 14 Jan 2022 08:20:03 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#53013
; Package
emacs
.
(Fri, 14 Jan 2022 08:21:02 GMT)
Full text and
rfc822 format available.
Message #34 received at 53013 <at> debbugs.gnu.org (full text, mbox):
Po Lu <luangruo <at> yahoo.com> writes:
> It's a temporary solution that just motivated me to look at making Emacs
> use GLib for handling subprocesses.
I think that's certainly worth a try -- we've had a lot of these issues
over the years.
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 11 Feb 2022 12:24:05 GMT)
Full text and
rfc822 format available.
This bug report was last modified 3 years and 129 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.