Bug: deadlock from msyslog

Eric S. Raymond esr at thyrsus.com
Mon Mar 21 18:14:58 UTC 2016


Hal Murray <hmurray at megapathdsl.net>:
> 
> A while (months) ago, we had troubles with msyslog scrambling output when 
> called from the DNS thread and the main thread at the same time.  That was 
> fixed by adding a lock.
> 
> That will deadlock if a signal handler calls msyslog when the signal goes off 
> in the middle of a msyslog call.
> 
> I poked around a bit.  There are a few signal handlers that call msyslog.  I 
> think they can be deferred.  It's probably worthwhile to study all the signal 
> usage and make some notes.
> 
> The only timing critical signal handler that I know about would be the one 
> grabbing the time of received packets.  That code doesn't get enabled by our 
> current build system.  NTP Classic uses it on NetBSD.

I just ported in the Classic fix "[Bug 2814] msyslog deadlock when signaled."
I think that'll do it for this one.
-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>


More information about the devel mailing list