Would it make sense for s6-supervise to inform s6-svscan of its child process ID? If s6-svscan is PID 1 and s6-supervise dies, the child will be reparented to s6-svscan. s6-svscan could then wait for it to exit before spawning s6-supervise again.
This works very nicely with PID namespaces, as it ensures that every process in the PID namespace has exited before the service can be respawned. It works without PID namespaces as well, though. If this is a good idea I might be able to submit a patch, but the first step is to know if this is something upstream is interested in. -- Sincerely, Demi Marie Obenour (she/her/hers)
OpenPGP_0xB288B55FFF9C22C1.asc
Description: OpenPGP public key
OpenPGP_signature.asc
Description: OpenPGP digital signature
