On Tue, 2010-03-30 at 11:38 -0400, (private) HKS wrote:
> On Tue, Mar 30, 2010 at 10:54 AM, Robert Segall <[email protected]> wrote:
> > On Mon, 2010-03-29 at 11:55 -0400, (private) HKS wrote:
> >> This seems to be related to configuring with --with-maxbuf 384 on a
> >> 64-bit box (I don't have any 64-bit non-FreeBSD boxes, so I can't test
> >> that). If I leave that out or use --with-maxbuf 92, there is no
> >> initial segfault.
> >>
> >> Any idea what's going on here?
> >
> > It might be a problem with the stack size, which is important on some
> > *BSD flavours. Try changing (version 2.5, pound.c line 359)
> >
> > #ifdef  NEED_STACK
> >  /* set new stack size - necessary for OpenBSD/FreeBSD and Linux NPTL */
> >  if(pthread_attr_setstacksize(&attr, 1 << 18)) {
> >     logmsg(LOG_ERR, "can't set stack size - aborted");
> >     exit(1);
> >  }
> > #endif
> >
> > to a higher value and see if it helps. Also make sure NEED_STACK is
> > defined.
> > --
> > Robert Segall
> > Apsis GmbH
> > Postfach, Uetikon am See, CH-8707
> > Tel: +41-32-512 30 19
> >
> >
> > --
> > To unsubscribe send an email with subject unsubscribe to [email protected].
> > Please contact [email protected] for questions.
> >
> 
> Good shot: boosting the stack size to 512k (1 << 19) fixed it. I know
> this probably slips into POSIX programming details, but can you help
> me understand a bit more of why this was a problem?

Each stack has its own "private" memory (stack). With 64 bits and large
buffers this limit is probably too low.
-- 
Robert Segall
Apsis GmbH
Postfach, Uetikon am See, CH-8707
Tel: +41-32-512 30 19


--
To unsubscribe send an email with subject unsubscribe to [email protected].
Please contact [email protected] for questions.

Reply via email to