[Swan-dev] use vfork/exec
Paul Wouters
paul at nohats.ca
Fri Oct 16 23:44:23 UTC 2015
On Sat, 17 Oct 2015, David McCullough wrote:
> Just remember that with vfork and the code in question, the parent is
> blocked until after the exec, so the sleep does nothing but slow the whole
> process down by 1 second :-)
Funny. Seems I introduced it in commit 1987ac98f where I claim:
* sleep 1s in the addconn thread on startup
It seems on my laptop, things start too fast and pluto isn't ready
yet to accept connections to load.
Although I just removed it now and it seems fine.
> Also, IIRC "exit" is not vfork safe, _exit() should be used instead.
We do use _exit() although we passed it 42 :)
>> BTW, if there's code lurking that is turning a process into a daemon
>> (fork/fork/exec) is one technique; then that should be changed to just
>> call daemon().
The code I talked about was written in python, see contrib/updown-example/example-terminate.py
Paul
More information about the Swan-dev
mailing list