eeb69571 | 09-Aug-2019 |
Matthew Dillon <dillon@apollo.backplane.com> |
rtld - Support static TLS bindings for late-loaded shared libraries
* Allow late (manual) dlopen()s to load shared libraries which use static TLS variables, as long as there is space. Do proper
rtld - Support static TLS bindings for late-loaded shared libraries
* Allow late (manual) dlopen()s to load shared libraries which use static TLS variables, as long as there is space. Do proper late-binding and initialize the area for all threads.
* rtld will cache a symbol lookup on first-need for: "_pthread_distribute_static_tls" and then call it as needed to initialize late-bound static TLS space.
This symbol is weakly bounded to __libc_distribute_static_tls in libc, and strongly overridden by _libthread_distribute_static_tls in libthread_xu.
* Fixes mesa glx-tls and others.
* Test code from FreeBSD. Also tested with other combinations including a pthread_create() and -static compilation.
https://github.com/dumbbell/test-tls-initial-exec
show more ...
|
f02ac277 | 24-Apr-2019 |
Sascha Wildner <saw@online.de> |
<unistd.h>: FWIW, set _XOPEN_ENH_I18N, per the standard.
We support all functions that it originally required, when it was still optional. It won't have any impact on anything, as far as I can see,
<unistd.h>: FWIW, set _XOPEN_ENH_I18N, per the standard.
We support all functions that it originally required, when it was still optional. It won't have any impact on anything, as far as I can see, so this commit is more cosmetic than anything else.
While here, improve some comments.
show more ...
|