Subject: Re: bug#57199: 29.0.50; Processes spawned by Emacs become zombie after restarting

From: Akib Azmain Turja <[email-masked]>
Date: Mon, 15 Aug 2022 15:50:34 +0600

Lars Ingebrigtsen <[email-masked]> writes:

> Akib Azmain Turja <[email-masked]> writes:
>
>> IIUC, Emacs sends SIGHUP (from kill_buffer_processes in process.c) to
>> all child processes to kill them just before exiting (or restarting),
>> and Tor uses that signal as the reload signal.
>
> [...]
>
>> How can a process resist being killed?  SIGKILL is lethal, always.  Why
>> kill-emacs sends SIGHUP while kill-process and delete-process sends
>> SIGKILL?
>
> Because we want processes started by Emacs to be allowed to shut down
> gracefully upon Emacs exit, but with explicit `kill-process', we don't
> care about that as much.
>
> So the problem here is that you're starting a process that responds to
> SIGHUP by not shutting down, and I don't think there's anything we can
> do on the Emacs side to help with that.  Perhaps you can write a wrapper
> script that does the right thing on HUP.
>
> But I don't think there's anything to be done on the Emacs side here, so
> I'm closing this bug report.
>
>
>

Why there is nothing to do?  Emacs can "wait" on the child when it
exits, or it might disown it.

-- 
Akib Azmain Turja

Find me on Mastodon at @[email-masked].

This message is signed by me with my GnuPG key.  Its fingerprint is:

    7001 8CE5 819F 17A3 BBA6  66AF E74F 0EFA 922A E7F5