Cancellation and dlmopen?
Adhemerval Zanella
adhemerval.zanella@linaro.org
Tue Nov 17 14:04:00 GMT 2015
On 14-11-2015 05:39, Florian Weimer wrote:
> On 11/14/2015 04:27 AM, Carlos O'Donell wrote:
>
>> In both context's I think we will need to add something to the
>> documentation to clarify that if you are calling into an new namespace
>> (which is what dlopen from a static binary is equivalent to) that if the new
>> namespace does not also load libpthread.so, then it is not thread safe
>> for you to call any function in that new namespace from multiple
>> threads.
>
> But __libc_multiple_threads in the new namespace will still be zero even
> if libpthread.so is loaded, right? I don't think it is reasonable to
> expect applications to work around that. It needs knowledge of a lot of
> implementation details.
I am not really sure if the single-thread optimization for system calls
are really a gain in my new proposed cancellation mechanism. For current
approach I can see some gains, since cancellation syscalls required
2 functions calls which may add atomic operations. However on the
new approach is basically two functions calls with no atomic involved.
>
> Florian
>
More information about the Libc-alpha
mailing list