elf: Avoid using memalign for TLS allocations [BZ #17730]
authorFlorian Weimer <fweimer@redhat.com>
Wed, 3 Aug 2016 14:15:38 +0000 (16:15 +0200)
committerFlorian Weimer <fweimer@redhat.com>
Wed, 3 Aug 2016 14:15:38 +0000 (16:15 +0200)
commita2ff21f825adb8821eeb6145197fa8b9a8a60a58
tree65f74b90eb0a005a278f80586b0ee001d358021b
parent5bc17330eb7667b96fee8baf3729c3310fa28b40
elf: Avoid using memalign for TLS allocations [BZ #17730]

Instead of a flag which indicates the pointer can be freed, dtv_t
now includes the pointer which should be freed.  Due to padding,
the size of dtv_t does not increase.

To avoid using memalign, the new allocate_dtv_entry function
allocates a sufficiently large buffer so that a sub-buffer
can be found in it which starts with an aligned pointer.  Both
the aligned and original pointers are kept, the latter for calling
free later.
ChangeLog
csu/libc-tls.c
elf/dl-tls.c
nptl/allocatestack.c
sysdeps/generic/dl-dtv.h