osdir.com


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug 62838] semaphores appear to be leaking


 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE

Underlying the issue, this is a flaw in APR ./configure which selects two default
mutexes, a confusing situation. I suspect RHEL and others patch around this
issue or toggle the appropriate autoconf variables during ./configure. The right
answer on linux is going to be pthread.

On Sat, Oct 20, 2018 at 7:04 AM <bugzilla@xxxxxxxxxx> wrote:
--- Comment #12 from mark@xxxxxxxxxxxxx ---
(In reply to Yann Ylavic from comment #8)
> KILLing the children processes shouldn't leak semaphores since there are
> created (and destroyed) by the parent process.
> Leaks usually happen when the parent process itself is killed, or crashes.
> Does your system report such parent process crashes?

No, there's no indication of the parent crashing. Should the parent PID change
after a SIGHUP? I will peer at the docs though.

 If the parent is correctly managing the startup/graceful/shutdown scenarios,
and your parent process is not being killed/segfaulting, then the most likely 
culprit is one of the modules I mentioned before, with a straightforward code
defect. Logic I introduced in mod_bmx_vhost, for example, leaked one mutex
for each graceful restart [https://github.com/hyperic/mod_bmx/issues/6].

This is why I'd encourage you to decouple one or a couple of modules at a time,
try cycling the server several times with both graceful and full restarts to see
if you can identify a third party module leaking semaphores, it's very unlikely
to be a core module of httpd.