various nptl patches

Timo Teräs timo.teras at iki.fi
Fri Apr 16 17:35:51 UTC 2010


Austin Foxley wrote:
> On 04/16/2010 07:37 AM, Timo Teräs wrote:
>> Ok, second try on getting the libc - libpthread interactions right.
>> 
>> 
>> This includes the Joakim's patch for protected symbols, with a
>> little fix from me.
> 
> I thought the hidden symbol thing would work, because I thought when
> you turned on stdio-futexes, everywhere used futexes. I didn't
> realize other places were using __pthread* symbols directly...

Yeah, that was my impression too. But it turns out to work
differently :/

> We'll need to patch all the other arch's ldso as well to handle
> protected symbols, but I'll apply this for now. If I'm not mistaken,
> other archs will be no worse off than they are now in this situation.
> Right?

Right. It makes things slightly better for other archs too, but
in practice it won't work until they support protected symbols too.

> These patches finally cleaned up the _pthread_cleanup* mess for me
> though. Thanks!

Yes, it's a bit better now.

The whole __GI_ aliasing thingy on libc side is a bit weird still.
I wonder if we could remove all that and just use the proper
visibility attributes. But I guess that's another story.

Oh well. At least nptl on x86 is starting to get to usable state
now. There will be still problems application without libpthread
goes and dlopen()'s a library loading libpthread. But that's
easily "fixable" by just linking the main app to libpthread.

Will continue testing next week.


More information about the uClibc mailing list