summaryrefslogtreecommitdiff
path: root/htl
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2020-11-11 10:35:10 +0000
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2020-11-11 20:41:25 +0000
commit9cec82de715b3ffc625a6c67d107a3fcb26af566 (patch)
treee66429ab410d9ef1510ac702a39ec439e956742f /htl
parenthtl: Keep thread signals blocked during its initialization (diff)
downloadglibc-9cec82de715b3ffc625a6c67d107a3fcb26af566.tar.gz
glibc-9cec82de715b3ffc625a6c67d107a3fcb26af566.tar.bz2
glibc-9cec82de715b3ffc625a6c67d107a3fcb26af566.zip
htl: Initialize later
Since htl does not actually need a stack switch, we can initialize it like nptl is, avoiding all sorts of startup issues with ifunc. More precisely, htl defines __pthread_initialize_minimal instead of the elder _cthread_init_routine. We can then drop the stack switching dances.
Diffstat (limited to 'htl')
-rw-r--r--htl/Versions4
-rw-r--r--htl/libpthread_syms.a2
2 files changed, 3 insertions, 3 deletions
diff --git a/htl/Versions b/htl/Versions
index 832cc5d814..4e23c2ed64 100644
--- a/htl/Versions
+++ b/htl/Versions
@@ -43,8 +43,6 @@ libpthread {
__pthread_mutex_transfer_np;
- _cthread_init_routine;
-
cthread_detach;
cthread_fork;
cthread_keycreate;
@@ -168,6 +166,8 @@ libpthread {
}
GLIBC_PRIVATE {
+ __pthread_initialize_minimal;
+
__shm_directory;
__pthread_threads;
diff --git a/htl/libpthread_syms.a b/htl/libpthread_syms.a
index 3801ec93c8..48dadfbd5f 100644
--- a/htl/libpthread_syms.a
+++ b/htl/libpthread_syms.a
@@ -1,6 +1,6 @@
/* pthread initializer is weak in glibc. It must be included if glibc
is to start threading. */
-EXTERN(_cthread_init_routine)
+EXTERN(__pthread_initialize_minimal)
/* Weak references in glibc that must be filled if glibc is to be
thread safe. */