On Sun, 29 Dec 2019 18:07:39 +0200 Alex Suykov wrote: > Er, that whole quoted part, including the last sentence, is about > using cgroups to supervise processes. Not about the use of cgroups in > general. I can't think of any other use cases where cgroup > supervision would be useful, other than for double-forking daemons. Agree. > Also, wrt process supervision, calling it a side effect is bit > misleading. The interfaces are not really made for that kind of use > at all. Strictly speaking, anything doing kill `cat .../cgroup.procs` > is racy and unreliable. Including that runcg tool that I wrote. In > practice, the race is pretty much irrelevant, but it's still there, > inherent to the interfaces. Yes, that is true - but the freezing cgroup can handle that race. As I already mentioned it has corner cases, where a freezed process can't be killed. As far as I read with cgroup v2 this corner case is gone. This whole thing itself (double forking) is a corner case and you should somewhen(!) give an easy interface to catch that case in a supervision toolbox(!) IMHO. You can think of providing that for marketing purposes earlier. However supporting system specific stuff like cgroups is useful (and not just a marketing gag to compete against systemd) and you should support that in a system specific toolbox as part of the supervision suite (read as it is referenced as optional dependency or directly packaged). I don't see a reason to implement such stuff inside of a supervision daemon itself - a system specific toolbox is the right place for that. Best Regards Oli -- Automatic-Server AG ••••• Oliver Schad Geschäftsführer Turnerstrasse 2 9000 St. Gallen | Schweiz www.automatic-server.com | oliver.schad@automatic-server.com Tel: +41 71 511 31 11 | Mobile: +41 76 330 03 47