fork() and syslog() locks each other. How to avoid?
Daniel Jacobowitz
drow@false.org
Sat Sep 23 14:05:00 GMT 2006
On Sat, Sep 23, 2006 at 06:00:13PM +0400, Peter Volkov (pva) wrote:
> I did not checked but seems that fork function takes mutex which syslog
> will waits for it. If I'm right then the question is what is the right
> way to avoid such situations but to keep program behavior?
Avoid calling syslog from a signal handler. Take a look at POSIX, and
you'll find a list of which C library functions are required to be safe
when called from signal handlers - and syslog is not on it.
--
Daniel Jacobowitz
CodeSourcery
More information about the Libc-alpha
mailing list