diff options
author | Sergey Bugaev <bugaevc@gmail.com> | 2021-09-15 20:11:08 +0300 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2021-09-16 01:04:05 +0200 |
commit | 166bb3eac351b88191d440b0fe8d5d7b757eaed0 (patch) | |
tree | 2a0366c36387bcee5c4ae2704ccca394cd969f48 /sysdeps/generic | |
parent | 4b6574a6f63b6c766f27be4a0b4c9376a35a4bd5 (diff) | |
download | glibc-166bb3eac351b88191d440b0fe8d5d7b757eaed0.zip glibc-166bb3eac351b88191d440b0fe8d5d7b757eaed0.tar.gz glibc-166bb3eac351b88191d440b0fe8d5d7b757eaed0.tar.bz2 |
htl: Move thread table to ld.so
The next commit is going to introduce a new implementation of
THREAD_GSCOPE_WAIT which needs to access the list of threads.
Since it must be usable from the dynamic laoder, we have to move
the symbols for the list of threads into the loader.
Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
Message-Id: <20210915171110.226187-2-bugaevc@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Diffstat (limited to 'sysdeps/generic')
-rw-r--r-- | sysdeps/generic/ldsodefs.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index 02bd579..f01b601 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -486,7 +486,16 @@ struct rtld_global /* Mutex protecting the stack lists. */ EXTERN int _dl_stack_cache_lock; +#else + /* The total number of thread IDs currently in use, or on the list of + available thread IDs. */ + EXTERN int _dl_pthread_num_threads; + + /* Array of __pthread structures and its lock. */ + EXTERN struct __pthread **_dl_pthread_threads; + __libc_rwlock_define (EXTERN, _dl_pthread_threads_lock) #endif + #if !THREAD_GSCOPE_IN_TCB EXTERN int _dl_thread_gscope_count; #endif |