diff options
author | Florian Weimer <fweimer@redhat.com> | 2016-08-03 16:16:57 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2016-08-03 16:16:57 +0200 |
commit | 6c444ad6e953dbdf9c7be065308a0a7779d32bb2 (patch) | |
tree | 3fb6aaaf2ac1d840ec6cebd39944d17f54b78b95 /nptl_db | |
parent | a2ff21f825adb8821eeb6145197fa8b9a8a60a58 (diff) | |
download | glibc-6c444ad6e953dbdf9c7be065308a0a7779d32bb2.tar.gz glibc-6c444ad6e953dbdf9c7be065308a0a7779d32bb2.tar.xz glibc-6c444ad6e953dbdf9c7be065308a0a7779d32bb2.zip |
elf: Do not use memalign for TCB/TLS blocks allocation [BZ #17730]
Instead, call malloc and explicitly align the pointer. There is no external location to store the original (unaligned) pointer, and this commit increases the allocation size to store the pointer at a fixed location relative to the TCB pointer. The manual alignment means that some space goes unused which was previously made available for subsequent allocations. However, in the TLS_DTV_AT_TP case, the manual alignment code avoids aligning the pre-TCB to the TLS block alignment. (Even while using memalign, the allocation had some unused padding in front.) This concludes the removal of memalign calls from the TLS code, and the new tst-tls3-malloc test verifies that only core malloc routines are used.
Diffstat (limited to 'nptl_db')
0 files changed, 0 insertions, 0 deletions