mirror of
git://sourceware.org/git/glibc.git
synced 2025-03-06 20:58:33 +01:00
Use the same code to compute the TLS block size and its alignment.
The code in elf/dl-tls.c is linked in anyway for all binaries
due to the reference to _dl_tls_static_surplus_init.
It is not possible to call _dl_allocate_tls_storage directly
because malloc is not available in the static case. (The
dynamic linker uses the minimal malloc at this stage.) Therefore,
split _dl_tls_block_size_with_pre and _dl_tls_block_align from
_dl_allocate_tls_storage, and call those new functions from
__libc_setup_tls.
This fixes extra TLS allocation for the static case, and apparently
some pre-existing bugs as well (the independent recomputation of
TLS block sizes in init_static_tls looks rather suspect).
Fixes commit
|
||
---|---|---|
.. | ||
abi-note.c | ||
check_fds.c | ||
dso_handle.c | ||
errno-loc.c | ||
errno.c | ||
gmon-start.c | ||
init-first.c | ||
init.c | ||
libc-start.c | ||
libc-tls.c | ||
Makefile | ||
rtld-sizes.sym | ||
start.c | ||
static-reloc.c | ||
sysdep.c | ||
version.c | ||
Versions |