Hi all,
        While digging into that mysterious hang of Apache 2 on Tru64,
I found that it seemed to be hanging under apr_poll in alloca() 
While I found that the problem seems to go away when not using a
prerelease version of the OS, it did bring something to my attention.

According to "Those Who Know", in a threaded environment on Tru64, we
should be including alloca.h which causes the alloca() function to
become a builtin (which They say is the one true way of avoiding
threaded issues). This affects one (yes 1) file in the pool,
srclib/apr/poll/unix/poll.c. Attached is a suggested change to include
alloca.h if HAVE_ALLOCA is set. If my assumption is wrong that alloca
is a universal include file (for machines that have alloca), then this
could be restricted to Tru64, or maybe another conditional in 
configure :-p

regards,
        Dave Hill

--- srclib/apr/poll/unix/poll.c.orig    2002-09-09 11:01:27.000000000 -0400
+++ srclib/apr/poll/unix/poll.c 2002-09-09 11:02:25.000000000 -0400
@@ -64,6 +64,10 @@
 #if HAVE_SYS_POLL_H
 #include <sys/poll.h>
 #endif
+#if HAVE_ALLOCA
+#include <alloca.h>
+#endif
+
 
 #ifdef NETWARE
 #define HAS_SOCKETS(dt) (dt == APR_POLL_SOCKET) ? 1 : 0

Reply via email to