pthread_create fails on a device with 16MB RAM

Rich Felker dalias at aerifal.cx
Tue Feb 1 22:49:07 UTC 2011


On Tue, Feb 01, 2011 at 06:27:31PM +0100, Carmelo AMOROSO wrote:
> Ok, but this value is used as a fall-back if system rlimit is bad. Now
> the proposal is to use it as a upper-bound, and there will no way to use
> a larger value is needed (for some reason). While the current
> implementation is more flexible, allowing to set a value that fit better
> with the user needs. The only concern I have against this patch.

Larger values should be configured by the application with
pthread_attr_setstacksize, not by the execution environment. I don't
see any good reason for the default to be more than you need for 10-20
levels of call frames with a small amount of local data, or 2-5 levels
with a moderate amount of data, plus whatever amount of stack space
the most stack-intensive libc function requires. Certainly 2 megs is
ridiculously large, and even 200k is way too big in my opinion.

Rich


More information about the uClibc mailing list