[PATCH] Dynamic thread stack size

Joe Marcus Clarke marcus at FreeBSD.org
Mon Jan 24 10:49:31 PST 2005


On Sat, 2005-01-22 at 13:03 -0500, Daniel Eischen wrote:
> On Fri, 21 Jan 2005, Joe Marcus Clarke wrote:
> 
> > In a follow-up to the previous discussion on increasing our default
> > thread stacksize, I thought I'd look at how some other BSD
> > implementations do it.  Mezz mentioned that he thought NetBSD had a 2 MB
> > default stacksize, so I took a look.
> >
> > What I found was that NetBSD doesn't have a static default stacksize.
> > Instead, they use the stacksize rlimit and a PTHREAD_STACKSIZE
> > environment variable to get both the initial stacksize as well as each
> > thread's default stacksize.  I thought this would be a really good way
> > of doing things, so I ported their work to FreeBSD.
> 
> Please no.  I don't want to have to set any more environment
> variables or login defaults to get libpthread to work with
> certain ports.

No need.  The default stacksize rlimit is more than enough (64 MB) to
satisfy every one of the affected ports thus far.  The environment
variable just gives us more runtime freedom.

>   Even if it were added, you'd have to do it
> to all thread libraries in all branches in order for ports
> to remove stacksize related patches.

I have no problem porting this to each thread library in each branch.
Besides, you'd have to touch the same to increase the static thread
stacksizes.

> 
> I thought I had increased default stack sizes, but I see that
> I haven't yet.

I think this method (the rlimit method) addresses one of your earlier
criticisms that a static stacksize would just have to be bumped again
and again.  With dynamic stacksizes, we don't have to worry about this
ever again.  Besides, any user that lowers their rlimit stacksize below
1 MB shouldn't be expected much to work anyway.

Joe

> 
-- 
Joe Marcus Clarke
FreeBSD GNOME Team      ::      gnome at FreeBSD.org
FreeNode / #freebsd-gnome
http://www.FreeBSD.org/gnome
-------------- 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/freebsd-threads/attachments/20050124/6da0ce1a/attachment.bin


More information about the freebsd-threads mailing list