apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeff Trawick" <traw...@gmail.com>
Subject API to prevent further allocations from a pool?
Date Thu, 07 Sep 2006 15:22:35 GMT
Occasionally I see problems caused by Apache modules using per-process
pools on a request processing thread.  Aside from the thread-safety
issues, they had no business doing that anyway.

It would be cool for the MPM to be able to lock the pool once it is
ready to start serving requests so that if any errant module tries to
use pconf, pchild, etc. it will crash immediately instead of
introducing memory corruption under load.  (Even if the module author
is "clever" and uses a mutex around the pool use, that assumes she is
the only person in the world to have that idea.)

Some other multi-threaded APR apps probably have the same concern,
especially if they allow plug-ins from third parties to be loaded.

apr_pool_lock() - cause abort() on subsequent allocation request
apr_pool_unlock() - allow it to be used again

View raw message