[Tarantool-patches] [PATCH 6/7] popen: handle setsid os specifics

Cyrill Gorcunov gorcunov at gmail.com
Tue Mar 10 19:41:00 MSK 2020


On Tue, Mar 10, 2020 at 07:36:46PM +0300, Alexander Turenko wrote:
> > It seems that setsid() is used mainly to disassociate from a controlling
> > terminal (to don't be hit by SIGHUP if it'll die). In this context
> > setpgrp() would not be sufficient.
> 
> I just realized that there is another reason to use setsid(), where
> setpgrp() is applicable too: move the child into its own process group
> and kill the whole group (child and its childs if any) then. I mean, use
> the corresponding flag (which I proposed to add in [1]), which will
> change :kill() behaviour.
> 
> [1]: https://lists.tarantool.org/pipermail/tarantool-patches/2020-March/014608.html
> 
> So, it seems, we should do ioctl() + setpgrp() on Mac OS?

The child may generate subchildren with own groups. If I'm not missing
something obvious we should provide only basic functionality whic would
be enough to spawn new processes. The child may generate subchildren
with own group, serisouly without pid namespace we simply do not control
much. Thus I propose to leave it in the state it is right now.


More information about the Tarantool-patches mailing list