]> granicus.if.org Git - apache/commitdiff
remove references to Irix uslock() mutex primitive
authorJeff Trawick <trawick@apache.org>
Wed, 26 Nov 2003 02:56:22 +0000 (02:56 +0000)
committerJeff Trawick <trawick@apache.org>
Wed, 26 Nov 2003 02:56:22 +0000 (02:56 +0000)
tweak mutex mechanism descriptions to describe them in terms of
AcceptMutex directive instead of ancient 1.3-style CFLAGS for
enabling to the mechanism

PR:         24228

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101897 13f79535-47bb-0310-9956-ffa450edef68

docs/manual/misc/perf-tuning.html.en
docs/manual/misc/perf-tuning.xml

index fbaa8e76188f18aab163bab44f4c3cd50feeb1ce..034f7e5220f0c0678980bccc5d0626bf854c1c1f 100644 (file)
       directives.</p>
 
       <p>The directive <code class="directive"><a href="../mod/mpm_common.html#acceptmutex">AcceptMutex</a></code> can be used to
-      change the selected mutuex implimentation at run-time.</p>
+      change the selected mutex implementation at run-time.</p>
 
       <dl>
-        <dt><code>USE_FLOCK_SERIALIZED_ACCEPT</code></dt>
+        <dt><code>AcceptMutex flock</code></dt>
 
         <dd>
           <p>This method uses the <code>flock(2)</code> system call to
           lock a lock file (located by the <code class="directive"><a href="../mod/mpm_common.html#lockfile">LockFile</a></code> directive).</p>
         </dd>
 
-        <dt><code>USE_FCNTL_SERIALIZED_ACCEPT</code></dt>
+        <dt><code>AcceptMutex fcntl</code></dt>
 
         <dd>
           <p>This method uses the <code>fcntl(2)</code> system call to
           lock a lock file (located by the <code class="directive"><a href="../mod/mpm_common.html#lockfile">LockFile</a></code> directive).</p>
         </dd>
 
-        <dt><code>USE_SYSVSEM_SERIALIZED_ACCEPT</code></dt>
+        <dt><code>AcceptMutex sysvsem</code></dt>
 
         <dd>
           <p>(1.3 or later) This method uses SysV-style semaphores to
           on most IRIX boxes).</p>
         </dd>
 
-        <dt><code>USE_USLOCK_SERIALIZED_ACCEPT</code></dt>
-
-        <dd>
-          <p>(1.3 or later) This method is only available on IRIX, and
-          uses <code>usconfig(2)</code> to create a mutex. While this
-          method avoids the hassles of SysV-style semaphores, it is not
-          the default for IRIX. This is because on single processor
-          IRIX boxes (5.3 or 6.2) the uslock code is two orders of
-          magnitude slower than the SysV-semaphore code. On
-          multi-processor IRIX boxes the uslock code is an order of
-          magnitude faster than the SysV-semaphore code. Kind of a
-          messed up situation. So if you're using a multiprocessor IRIX
-          box then you should rebuild your webserver with
-          <code>-DUSE_USLOCK_SERIALIZED_ACCEPT</code> on the
-          <code>EXTRA_CFLAGS</code>.</p>
-        </dd>
-
-        <dt><code>USE_PTHREAD_SERIALIZED_ACCEPT</code></dt>
+        <dt><code>AcceptMutex pthread</code></dt>
 
         <dd>
           <p>(1.3 or later) This method uses POSIX mutexes and should
           hanging and not responding. Static content only servers may
           work just fine.</p>
         </dd>
+
+        <dt><code>AcceptMutex posixsem</code></dt>
+
+        <dd>
+          <p>(2.0 or later)  This method uses POSIX semaphores.  The
+          semaphore ownership is not recovered if a thread in the process
+          holding the mutex segfaults, resulting in a hang of the web
+          server.</p>
+        </dd>
+
       </dl>
 
       <p>If your system has another method of serialization which
       isn't in the above list then it may be worthwhile adding code
-      for it (and submitting a patch back to Apache).</p>
+      for it to APR.</p>
 
       <p>Another solution that has been considered but never
       implemented is to partially serialize the loop -- that is, let
index 6a751ebf4887aa98d5c23e16ce30bf9f30d1aa10..3e4fd24371ca022e7c9adac221a2a983a130f4a6 100644 (file)
 
       <p>The directive <directive
       module="mpm_common">AcceptMutex</directive> can be used to
-      change the selected mutuex implimentation at run-time.</p>
+      change the selected mutex implementation at run-time.</p>
 
       <dl>
-        <dt><code>USE_FLOCK_SERIALIZED_ACCEPT</code></dt>
+        <dt><code>AcceptMutex flock</code></dt>
 
         <dd>
           <p>This method uses the <code>flock(2)</code> system call to
           >LockFile</directive> directive).</p>
         </dd>
 
-        <dt><code>USE_FCNTL_SERIALIZED_ACCEPT</code></dt>
+        <dt><code>AcceptMutex fcntl</code></dt>
 
         <dd>
           <p>This method uses the <code>fcntl(2)</code> system call to
           >LockFile</directive> directive).</p>
         </dd>
 
-        <dt><code>USE_SYSVSEM_SERIALIZED_ACCEPT</code></dt>
+        <dt><code>AcceptMutex sysvsem</code></dt>
 
         <dd>
           <p>(1.3 or later) This method uses SysV-style semaphores to
           on most IRIX boxes).</p>
         </dd>
 
-        <dt><code>USE_USLOCK_SERIALIZED_ACCEPT</code></dt>
-
-        <dd>
-          <p>(1.3 or later) This method is only available on IRIX, and
-          uses <code>usconfig(2)</code> to create a mutex. While this
-          method avoids the hassles of SysV-style semaphores, it is not
-          the default for IRIX. This is because on single processor
-          IRIX boxes (5.3 or 6.2) the uslock code is two orders of
-          magnitude slower than the SysV-semaphore code. On
-          multi-processor IRIX boxes the uslock code is an order of
-          magnitude faster than the SysV-semaphore code. Kind of a
-          messed up situation. So if you're using a multiprocessor IRIX
-          box then you should rebuild your webserver with
-          <code>-DUSE_USLOCK_SERIALIZED_ACCEPT</code> on the
-          <code>EXTRA_CFLAGS</code>.</p>
-        </dd>
-
-        <dt><code>USE_PTHREAD_SERIALIZED_ACCEPT</code></dt>
+        <dt><code>AcceptMutex pthread</code></dt>
 
         <dd>
           <p>(1.3 or later) This method uses POSIX mutexes and should
           hanging and not responding. Static content only servers may
           work just fine.</p>
         </dd>
+
+        <dt><code>AcceptMutex posixsem</code></dt>
+
+        <dd>
+          <p>(2.0 or later)  This method uses POSIX semaphores.  The
+          semaphore ownership is not recovered if a thread in the process
+          holding the mutex segfaults, resulting in a hang of the web
+          server.</p>
+        </dd>
+
       </dl>
 
       <p>If your system has another method of serialization which
       isn't in the above list then it may be worthwhile adding code
-      for it (and submitting a patch back to Apache).</p>
+      for it to APR.</p>
 
       <p>Another solution that has been considered but never
       implemented is to partially serialize the loop -- that is, let