I may be guilty of missing a crucial point here, but: why do we care about having a small limit of static TLS variables?
We surely could allocate, say, a megabyte of static TLS for each thread. We already allocate 64M for the thread-local malloc arena, after all. It doesn't cost anything beyond a little address space. What am I missing? Andrew.