aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/generic
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2021-05-10 10:31:41 +0200
committerFlorian Weimer <fweimer@redhat.com>2021-05-10 10:31:41 +0200
commitd017b0ab5a181dce4145f3a1b3b27e3341abd201 (patch)
treecfe65201d70b7df83848838256d2c7288dcee67b /sysdeps/generic
parent0df5d8d404fbf6a7802737b0f9d32ab3376cec86 (diff)
downloadglibc-d017b0ab5a181dce4145f3a1b3b27e3341abd201.zip
glibc-d017b0ab5a181dce4145f3a1b3b27e3341abd201.tar.gz
glibc-d017b0ab5a181dce4145f3a1b3b27e3341abd201.tar.bz2
elf: Introduce __tls_pre_init_tp
This is an early variant of __tls_init_tp, primarily for initializing thread-related elements of _rtld_global/GL. Some existing initialization code not needed for NPTL is moved into the generic version of this function. Tested-by: Carlos O'Donell <carlos@redhat.com> Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'sysdeps/generic')
-rw-r--r--sysdeps/generic/ldsodefs.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index 6d590d1..ee851ac 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -1165,6 +1165,10 @@ extern void _dl_determine_tlsoffset (void) attribute_hidden;
number of audit modules are loaded. */
void _dl_tls_static_surplus_init (size_t naudit) attribute_hidden;
+/* This function is called very early from dl_main to set up TLS and
+ other thread-related data structures. */
+void __tls_pre_init_tp (void) attribute_hidden;
+
/* This function is called after processor-specific initialization of
the TCB and thread pointer via TLS_INIT_TP, to complete very early
initialization of the thread library. */