----- Original Message ----- From: "Brian Pane" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, September 09, 2002 3:02 PM Subject: Re: alloca() issue on tru64
> Dave Hill wrote: > > >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 > > > > I like the idea of restricting the change to Tru64 for now, just > to eliminate the possibility of breaking something unexpected on > some other system this close to the 2.0.41 launch. Is there a > standard preprocessor macro that compilers on Tru64 define, so > that we can do something like "#if HAVE_ALLOCA && __TRU64__"? For Tru64, the compiler defines two things, __alpha and __osf__ , either can be used, the __osf__ tends to be used more. So: #if HAVE_ALLOCA && defined(__osf__) regards, Dave Hill