Nagios and threads

Daniel Eischen deischen at freebsd.org
Wed Jun 22 14:31:46 GMT 2005


On Wed, 22 Jun 2005, Peter Edwards wrote:

> On 6/22/05, Kamal R. Prasad <kamalpr at yahoo.com> wrote:
> >
> > The child process should be able to call any system
> > calls it likes -without assuming that pthreads from
> > the parent process have been copied over to the child
> > process. I spose most implementations support that.
> >
>
> There's more to it than system calls, though (most (all?) of which
> will be async-signal-safe anyway). Simple example: any lock that the
> libc implementation needs to provide its functionality may be
> arbitrarily locked by some other thread: eg, one thread calls malloc()
> as another calls fork(): the original thread ceases to exist in the
> child while holding a lock in malloc, leaving malloc() unusable in the
> process.

We do protect the malloc lock across a fork(), but that's it.

-- 
DE



More information about the freebsd-hackers mailing list