httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rodent of Unusual Size <Ken.C...@Golux.Com>
Subject Re: [PATCH] get threaded MPM to terminate
Date Wed, 25 Apr 2001 18:06:24 GMT wrote:
> I now have a patch that compiles cleanly, and should completely
> remove the pipe_of_death.  The basic idea is that everything is
> done through signals, using the SIGWAIT logic.  As for waking
> threads up from apr_poll, that is done by connecting to the socket
> from the server itself, and then immediately closing the socket.

Ugh.  Ick.  -1.  If the system's stack is hosed, or the network
is being shut down (think OS/390), this can cause problems.  Or
think of a protocol module that is not even talking to the network,
but is doing some other kind of job.  Never send your control
functions over the data channel; they need to be out of band from
the data.

We got away from the 1.3 signal module for well-known reasons.
The pipe_of_death is cross-platform safe and provides the necessary
granularity, but interferes with SINGLE_LISTEN_UNSERIALIZED_ACCEPT.
Any replacement for pipe_of_death must not introduce any regressions;
using the data channel will do so for the reasons stated above.
Some other mechanism may have the advantages of pipe_of_death
without its drawbacks, but this is not it.
#ken    P-)}

Ken Coar                    <http://Golux.Com/coar/>
Apache Software Foundation  <>
"Apache Server for Dummies" <http://Apache-Server.Com/>
"Apache Server Unleashed"   <http://ApacheUnleashed.Com/>

View raw message