diff options
| author | Jakub Jelinek <jakub@redhat.com> | 2020-12-03 13:33:44 +0100 |
|---|---|---|
| committer | Florian Weimer <fweimer@redhat.com> | 2020-12-03 13:48:55 +0100 |
| commit | 1d9cbb96082e646de7515a1667efa041ffb79958 (patch) | |
| tree | b52e641f97c37dfed401538a038a4ae058ea87ce /malloc/scratch_buffer_set_array_size.c | |
| parent | 7c331116971d38e57703af4097ed13ab6bef91d0 (diff) | |
| download | glibc-1d9cbb96082e646de7515a1667efa041ffb79958.tar.xz glibc-1d9cbb96082e646de7515a1667efa041ffb79958.zip | |
x86: Fix THREAD_SELF definition to avoid ld.so crash (bug 27004)
The previous definition of THREAD_SELF did not tell the compiler
that %fs (or %gs) usage is invalid for the !DL_LOOKUP_GSCOPE_LOCK
case in _dl_lookup_symbol_x. As a result, ld.so could try to use the
TCB before it was initialized.
As the comment in tls.h explains, asm volatile is undesirable here.
Using the __seg_fs (or __seg_gs) namespace does not interfere with
optimization, and expresses that THREAD_SELF is potentially trapping.
Diffstat (limited to 'malloc/scratch_buffer_set_array_size.c')
0 files changed, 0 insertions, 0 deletions
