From ebff9c5cfae62e84dbd0456d564bd882818dc15f Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Sat, 14 Jul 2018 05:53:05 -0700 Subject: x86: Rename __glibc_reserved1 to feature_1 in tcbhead_t [BZ #22563] feature_1 has X86_FEATURE_1_IBT and X86_FEATURE_1_SHSTK bits for CET run-time control. CET_ENABLED, IBT_ENABLED and SHSTK_ENABLED are defined to 1 or 0 to indicate that if CET, IBT and SHSTK are enabled. is added to set up thread-local data. Reviewed-by: Carlos O'Donell [BZ #22563] * nptl/pthread_create.c: Include . (__pthread_create_2_1): Call tls_setup_tcbhead. * sysdeps/generic/tls-setup.h: New file. * sysdeps/x86/nptl/tls-setup.h: Likewise. * sysdeps/i386/nptl/tcb-offsets.sym (FEATURE_1_OFFSET): New. * sysdeps/x86_64/nptl/tcb-offsets.sym (FEATURE_1_OFFSET): Likewise. * sysdeps/i386/nptl/tls.h (tcbhead_t): Rename __glibc_reserved1 to feature_1. * sysdeps/x86_64/nptl/tls.h (tcbhead_t): Likewise. * sysdeps/x86/sysdep.h (X86_FEATURE_1_IBT): New. (X86_FEATURE_1_SHSTK): Likewise. (CET_ENABLED): Likewise. (IBT_ENABLED): Likewise. (SHSTK_ENABLED): Likewise. --- nptl/pthread_create.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'nptl') diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c index 92c945b12b..5f5a007b7f 100644 --- a/nptl/pthread_create.c +++ b/nptl/pthread_create.c @@ -32,6 +32,7 @@ #include #include #include +#include #include "libioP.h" #include @@ -712,6 +713,9 @@ __pthread_create_2_1 (pthread_t *newthread, const pthread_attr_t *attr, THREAD_COPY_POINTER_GUARD (pd); #endif + /* Setup tcbhead. */ + tls_setup_tcbhead (pd); + /* Verify the sysinfo bits were copied in allocate_stack if needed. */ #ifdef NEED_DL_SYSINFO CHECK_THREAD_SYSINFO (pd); -- cgit v1.2.3