On Mon, Aug 30, 2010 at 10:59:45AM +0300, Kostik Belousov wrote:
> On Mon, Aug 30, 2010 at 12:06:05AM +0000, Pawel Jakub Dawidek wrote:
> > Author: pjd
> > Date: Mon Aug 30 00:06:05 2010
> > New Revision: 211982
> > URL: http://svn.freebsd.org/changeset/base/211982
> > 
> > Log:
> >   Use sigtimedwait(2) for signals handling in primary process.
> >   This fixes various races and eliminates use of pthread* API in signal 
> > handler.
> 
> Replying to the random commit.
> 
> In the multithreaded process, after the fork in the child, you shall
> not call any not async-signal safe functions. I suppose that hook_execv()
> exposes the issue, calling into some stdio functions and sysconf().

Right. It should be fixed it in r212038. Now all the hooks are executed
from the main (non-threaded) process. This also makes it easier to drop
privs in the worker processes in the future, now that we don't execute
anything from them.

Thanks for pointing that out.

-- 
Pawel Jakub Dawidek                       http://www.wheelsystems.com
[email protected]                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!

Attachment: pgp4tqVjY1kzH.pgp
Description: PGP signature

Reply via email to