httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Trawick <>
Subject Re: [PATCH] screw up prefork even more
Date Fri, 15 Jun 2001 10:08:30 GMT
"Paul J. Reder" <> writes:

> Jeff Trawick wrote:
> >                                                                We ran
> > into this previously with threaded, and though prefork should have
> > less chance of this problem we don't know what libc and plugin modules
> > will be doing.
> Actually, prefork was where I first ran into problems with the mutexes
> during cleanups. When perform_idle_server_maintenance was called. If
> it found too many idle workers it would try to cleanup. On occaision it
> would clean up a worker that was still starting. The new worker had
> grabbed the mutex for pools, but not yet obtained a pool. Clean_child_exit
> was called and tried to free the pool but couldn't get past the mutex.
> The child could not come up or go down. The code in perform_idle_server_
> maintenance kept trying to kill the same worker, so the number of
> workers could never drop below this threashold again.

We now kill idle workers with the pod (i.e., don't do work in the
signal handler) so this particular problem is avoided.

I'm still uncomfortable about doing so much in the SIGHUP handler in
the child, but I have no real solution and we need to move forward.

Jeff Trawick | | PGP public key at web site:
             Born in Roswell... married an alien...

View raw message