On 8/3/2006 7:11 AM, jfcl...@apache.org wrote:
Author: jfclere
Date: Thu Aug  3 05:11:14 2006
New Revision: 428374

URL: http://svn.apache.org/viewvc?rev=428374&view=rev
Log:
A presistence to the shared memory slotmem.

Yes, that's from the wayback machine but applies as a roadblock
to shipping 2.4.0...

+static const char *store_filename(apr_pool_t *pool, const char *slotmemname)
+{
+    const char *storename;
+    const char *fname;
+    if (strcmp(slotmemname, "anonymous") == 0)
+        fname = ap_server_root_relative(pool, "logs/anonymous");

anonymous this is not.  An anonymous shm has no name.  On some platforms
it is backed by swap, on NO PLATFORM is it addressable without being
inherited.  So if we have four 'anonymous' shm's they are going to collide
with each other?  The defect persists to this day.

I rather suspect this design failure might be the root of the whole
win32 issue, because win32 is create-process, not fork()ed, and yet
perhaps we have collided by-name, but I haven't had cycles to research.
Maybe this turkey holiday is going to give me cycles to work on the
parts of httpd I need to stick my fingers into.  And pie.

Reply via email to