httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Justin Erenkrantz <jerenkra...@ebuilt.com>
Subject Re: [PATCH] Threaded MPM and unserialized accept
Date Mon, 16 Jul 2001 18:41:15 GMT
On Mon, Jul 16, 2001 at 02:24:28PM -0400, Greg Ames wrote:
> eh?  why not?  Works fine on OS/390; I suspect it works fine on recent
> Linux kernels too.

Please read the earlier threads (it's long and confusing though).  

In short: we can't have all of the threads in a process waiting for 
the accept (blocking call).  Why?

Consider the POD.  One thread receives the connect that occurs with the
POD, reads the POD, sets workers_may_exit, and exits.  Now, on machines 
with S_L_U_A, all of the other threads are now in the blocking accept
(on machines without S_L_U_A, they are in a cross-process mutex 
acquire).  They will never wake up until they receive a connection (or
get the mutex).  This won't happen on a fairly-idle server for a long 
time - even though we want to die.  Hence, you need to serialize all 
of the worker threads in a process using something similar to the 
patch I submitted.  -- justin


Mime
View raw message