bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#67132: [Shepherd] Bogus value from PID file can prevent service from


From: Ludovic Courtès
Subject: bug#67132: [Shepherd] Bogus value from PID file can prevent service from being stopped
Date: Wed, 22 Nov 2023 11:16:37 +0100
User-agent: Gnus/5.13 (Gnus v5.13)

Ludovic Courtès <ludo@gnu.org> skribis:

> ‘terminate-process’ in (shepherd service) assumes that, once it has sent
> SIGKILL to a given PID, it eventually gets a SIGCHLD notification for
> that PID.
>
> Unfortunately there are corner cases where it doesn’t hold.  Take PID 2:
>
> $ ps x 2
>   PID TTY      STAT   TIME COMMAND
>     2 ?        S      0:00 [kthreadd]
>
> That’s not a “real” process, so when you (kill 2 SIGKILL), nothing
> happens.  Thus, ‘terminate-process’ never returns; the corresponding
> service stays in “stopping” state and you cannot halt your machine.

Fixed in Shepherd commit cc9c5c029534458ae547d78200b6b51f729654e3.

Ludo’.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]