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