aboutsummaryrefslogtreecommitdiff
path: root/elf/rtld_static_init.c
AgeCommit message (Collapse)Author
2021-05-20elf: Initialize GLRO (dl_minsigstacksize) after static dlopenFlorian Weimer
This is another field of _rtld_global_ro that benefits from initialization in __rtld_static_init. Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
2021-05-17elf: Move static TLS size and alignment into _rtld_global_roFlorian Weimer
This helps to clarify that the caching of these fields in libpthread (in __static_tls_size, __static_tls_align_m1) is unnecessary. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2021-05-17elf: Partially initialize ld.so after static dlopen (bug 20802)Florian Weimer
After static dlopen, a copy of ld.so is loaded into the inner namespace, but that copy is not initialized at all. Some architectures run into serious problems as result, which is why the _dl_var_init mechanism was invented. With libpthread moving into libc and parts into ld.so, more architectures impacted, so it makes sense to switch to a generic mechanism which performs the partial initialization. As a result, getauxval now works after static dlopen (bug 20802). Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>