On Thu, Feb 23, 2006 at 01:05:41PM -0600, Dr. Rich Murphey wrote: ... > If you see mpg123 consume 100% CPU upon > shutting down asterisk, this sounds like a > familiar symptom. > I recall looking at mpg123 and finding that > when asterisk exits and closes the pipe to > mpg123, mpg123 would not detect > that the pipe closed, but rather loop indefinitely > reading 0 bytes from the closed pipe. > > Since it's possible for the pipe to close unexpectedly > I assumed that this was a bug in mpg123.
this is one part, but there was more to this. At least on freebsd 4.11 (with libc_r) there is also a problem when asterisk forks an external processes and then exec()s a new one, because of the way the low-numbered io descriptor are handled (libc_r wants them non-blocking, but since they are shared, the other program could change them into blocking mode, which screws up the userland threading library). The description i posted at the time is here http://archives.vault9.net/arc/mailing/freebsd-hackers/0218.html cheers luigi _______________________________________________ Asterisk-BSD mailing list [email protected] http://lists.digium.com/mailman/listinfo/asterisk-bsd

