aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2021-05-10 10:31:42 +0200
committerFlorian Weimer <fweimer@redhat.com>2021-05-10 10:31:42 +0200
commit8c1c0da3a8112695d5cc82aae22666321965b42f (patch)
tree6cd1ad903f1ddb1b86146d3d2f85363e09aaa982
parent652c7c6fe7a08643b8e98f085d422f4e43ec47b4 (diff)
downloadglibc-8c1c0da3a8112695d5cc82aae22666321965b42f.zip
glibc-8c1c0da3a8112695d5cc82aae22666321965b42f.tar.gz
glibc-8c1c0da3a8112695d5cc82aae22666321965b42f.tar.bz2
nptl: Move __default_pthread_attr, __default_pthread_attr_lock into libc
The GLIBC_PRIVATE exports for these symbols are expected to be temporary. Tested-by: Carlos O'Donell <carlos@redhat.com> Reviewed-by: Carlos O'Donell <carlos@redhat.com>
-rw-r--r--nptl/Makefile2
-rw-r--r--nptl/Versions2
-rw-r--r--nptl/pthreadP.h8
-rw-r--r--nptl/vars.c8
4 files changed, 14 insertions, 6 deletions
diff --git a/nptl/Makefile b/nptl/Makefile
index b5f26c6..f7723cb 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -170,6 +170,7 @@ routines = \
sem_wait \
tpp \
unwind \
+ vars \
shared-only-routines = forward
static-only-routines = pthread_atfork
@@ -212,7 +213,6 @@ libpthread-routines = \
pthread_sigqueue \
pthread_timedjoin \
pthread_tryjoin \
- vars \
version \
libpthread-shared-only-routines = \
diff --git a/nptl/Versions b/nptl/Versions
index fb15a7e..d439a02 100644
--- a/nptl/Versions
+++ b/nptl/Versions
@@ -298,6 +298,8 @@ libc {
tss_set;
}
GLIBC_PRIVATE {
+ __default_pthread_attr;
+ __default_pthread_attr_lock;
__futex_abstimed_wait64;
__futex_abstimed_wait_cancelable64;
__init_sched_fifo_prio;
diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h
index 3a6b436..6b912f0 100644
--- a/nptl/pthreadP.h
+++ b/nptl/pthreadP.h
@@ -198,9 +198,11 @@ enum
/* Default pthread attributes. */
-extern union pthread_attr_transparent __default_pthread_attr attribute_hidden;
-extern int __default_pthread_attr_lock attribute_hidden;
-/* Called from __libpthread_freeres to deallocate the default attribute. */
+extern union pthread_attr_transparent __default_pthread_attr;
+libc_hidden_proto (__default_pthread_attr)
+extern int __default_pthread_attr_lock;
+libc_hidden_proto (__default_pthread_attr_lock)
+/* Called from __libc_freeres to deallocate the default attribute. */
extern void __default_pthread_attr_freeres (void) attribute_hidden;
/* Size and alignment of static TLS block. */
diff --git a/nptl/vars.c b/nptl/vars.c
index 03a6cc8..989d793 100644
--- a/nptl/vars.c
+++ b/nptl/vars.c
@@ -22,7 +22,11 @@
/* Default thread attributes for the case when the user does not
provide any. */
-union pthread_attr_transparent __default_pthread_attr attribute_hidden;
+union pthread_attr_transparent __default_pthread_attr
+ __attribute__ ((nocommon));
+libc_hidden_data_def (__default_pthread_attr)
/* Mutex protecting __default_pthread_attr. */
-int __default_pthread_attr_lock = LLL_LOCK_INITIALIZER;
+int __default_pthread_attr_lock __attribute__ ((nocommon))
+ = LLL_LOCK_INITIALIZER;
+libc_hidden_data_def (__default_pthread_attr_lock)