cvs commit: src/lib/libpthread/thread thr_attr_init.c
thr_init.c thr_private.h thr_stack.c
Joe Marcus Clarke
marcus at marcuscom.com
Mon Feb 14 04:30:46 GMT 2005
On Mon, 2005-02-14 at 05:03 +0100, Maxime Henrion wrote:
> Joe Marcus Clarke wrote:
> > On Sun, 2005-02-13 at 18:05 -0800, John-Mark Gurney wrote:
> > > Joe Marcus Clarke wrote this message on Sun, Feb 13, 2005 at 18:33 -0500:
> > > > And there was much rejoicing! I would like to reiterate mezz's request
> > > > for a __FreeBSD_version bump once all the thread libraries are updated.
> > > > It would also be good to get this MFC'd before 5.4. Thanks again.
> > >
> > > If any application that cares/requires changes from the default, either
> > > due to large number of threads (requiring small stack size), or large
> > > stacks, should already be patched with their new defaults... So
> > > requiring a modification based upon version before/after this change
> > > should be unnecessary...
> >
> > But knowing when this patch is implemented means we can _not_ patch
> > certain applications. The best example of this is gstreamer. Gstreamer
> > is patched to lower its initial thread stack usage to 1 MB since that
> > was the previous limit. This severely limits gstreamer. With the
> > larger initial thread stack size (something that is not changeable by
> > individual applications), we no longer need to cripple gstreamer on
> > -CURRENT. Therefore, I ask __FreeBSD_version to be bumped so I know
> > when it's safe to let gstreamer take a full 2 MB of stack on the initial
> > thread.
>
> Is there anything wrong with pthread_attr_setstacksize()? Using this to
> patch the said applications would allow them to get an acceptably sized
> stack whether the host is running an old or a recent version of
> libpthread. It would also make sense to then submit the patches to the
> vendor so that it's not too much a burden to maintain.
This works for all threads but the initial thread. Gstreamer uses this
thread for most of its operations. That stack size was set to be 1 MB
when gstreamer really wanted 2. For all other thread problems, yes, I
used pthread_attr_setstacksize() as the solution.
Joe
>
> Cheers,
> Maxime
>
--
PGP Key : http://www.marcuscom.com/pgp.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/cvs-src/attachments/20050213/fb6afaad/attachment.bin
More information about the cvs-src
mailing list