Hi, Lorenzo schrob: > if you can confirm whether my idea (below) works or not I'm going to > include either this or your patch to the next runit upload. > > something like > > > > KillMode=control-group > > TimeoutStopSec=2 > > > > can be used instead: did you already tried something like the above > > (and it does not work)?
I didn't try it because it's fundamentally wrong: it will send signals
to *all* processes in the control group, including children of
supervised processes, which should not be killed in this way, but
instead be left alone, to be handled by the supervised processes
themselves.
One case where that might conceivably make a difference is dhcpcd, where
the supervised master process might still use its privsep children to do
additional teardown work before it kills them. I haven't tested that
hypothesis, however.
(Of course, it would always be possible to work around
KillMode=control-group for such services by making their ./run file move
them to their own cgroup, and runsv(8) would still DTRT by virtue of
staying in the runit.cgroup and getting the TERM signal.
I'd consider that a hack, tho.)
> > maybe unrelated, but we may also benefit from
> >
> > SuccessExitStatus=111
That seems appropriate.
cheers,
Jan
signature.asc
Description: PGP signature

