fcntl. Idle child cleanup doesn't work when the child selected
for termination by the parent is waiting on a pthread mutex, and
because the AIX kernel's notion of hot process is apparently the
same as Apache's, it is common for the Apache parent to continually
select a child for termination that the kernel will leave waiting
on the mutex for extended periods of time. There are other
concerns with pthread mutexes as well, such as the ability to
deadlock the server if a child process segfaults while holding the
mutex.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x@99718
13f79535-47bb-0310-9956-
ffa450edef68
Changes with Apache 1.3.28
+ *) AIX: Change the default accept mechanism from pthread back to
+ fcntl. Idle child cleanup doesn't work when the child selected
+ for termination by the parent is waiting on a pthread mutex, and
+ because the AIX kernel's notion of hot process is apparently the
+ same as Apache's, it is common for the Apache parent to continually
+ select a child for termination that the kernel will leave waiting
+ on the mutex for extended periods of time. There are other
+ concerns with pthread mutexes as well, such as the ability to
+ deadlock the server if a child process segfaults while holding the
+ mutex. [Jeff Trawick]
+
*) Fix a pair of potential buffer overflows in htdigest
[Martin Schulze <joey@infodrom.org>, Thom May]
#define NEED_UNION_SEMUN
#if AIX >= 430
#define HAVE_PTHREAD_SERIALIZED_ACCEPT
-#define USE_PTHREAD_SERIALIZED_ACCEPT
-#else
-#define USE_FCNTL_SERIALIZED_ACCEPT
#endif
+#define USE_FCNTL_SERIALIZED_ACCEPT
#if AIX >= 432
#define SINGLE_LISTEN_UNSERIALIZED_ACCEPT
#endif