summaryrefslogtreecommitdiff
path: root/libpthread/nptl/sysdeps/pthread
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2010-04-14 20:01:33 +0300
committerAustin Foxley <austinf@cetoncorp.com>2010-04-14 10:53:08 -0700
commit1610762362e651f86ca284ac59a1d7ec88034e4e (patch)
treedd0950ba51eb7cd72d4f2ae67ee262d51394994b /libpthread/nptl/sysdeps/pthread
parentbd881300eb5380e4bd636b092b706b4b31def7fb (diff)
nptl: mark symbols with libc forwarder hidden
Add attribute_hidden to all symbols having libc forwarder. This prevents recursive self calls which would happen if libc is before libpthread in linking order: the forwarder functions would call itself via the function table, since the libpthread symbols would get overwritten with libc ones. This has not been a problem in glibc since there these symbols are marked hidden with linker version-script. Since we don't use one, we need to mark these explicitly. Signed-off-by: Timo Teräs <timo.teras@iki.fi> Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Diffstat (limited to 'libpthread/nptl/sysdeps/pthread')
-rw-r--r--libpthread/nptl/sysdeps/pthread/pthread_cond_broadcast.c1
-rw-r--r--libpthread/nptl/sysdeps/pthread/pthread_cond_signal.c1
-rw-r--r--libpthread/nptl/sysdeps/pthread/pthread_cond_timedwait.c1
-rw-r--r--libpthread/nptl/sysdeps/pthread/pthread_cond_wait.c1
-rw-r--r--libpthread/nptl/sysdeps/pthread/pthread_rwlock_rdlock.c1
-rw-r--r--libpthread/nptl/sysdeps/pthread/pthread_rwlock_unlock.c1
-rw-r--r--libpthread/nptl/sysdeps/pthread/pthread_rwlock_wrlock.c1
7 files changed, 7 insertions, 0 deletions
diff --git a/libpthread/nptl/sysdeps/pthread/pthread_cond_broadcast.c b/libpthread/nptl/sysdeps/pthread/pthread_cond_broadcast.c
index 5e7465774..04cfc3a72 100644
--- a/libpthread/nptl/sysdeps/pthread/pthread_cond_broadcast.c
+++ b/libpthread/nptl/sysdeps/pthread/pthread_cond_broadcast.c
@@ -28,6 +28,7 @@
int
+attribute_hidden
__pthread_cond_broadcast (
pthread_cond_t *cond)
{
diff --git a/libpthread/nptl/sysdeps/pthread/pthread_cond_signal.c b/libpthread/nptl/sysdeps/pthread/pthread_cond_signal.c
index d66f3edbb..aa6d108ed 100644
--- a/libpthread/nptl/sysdeps/pthread/pthread_cond_signal.c
+++ b/libpthread/nptl/sysdeps/pthread/pthread_cond_signal.c
@@ -28,6 +28,7 @@
int
+attribute_hidden
__pthread_cond_signal (
pthread_cond_t *cond)
{
diff --git a/libpthread/nptl/sysdeps/pthread/pthread_cond_timedwait.c b/libpthread/nptl/sysdeps/pthread/pthread_cond_timedwait.c
index 4aaf5df75..88aa0dbf1 100644
--- a/libpthread/nptl/sysdeps/pthread/pthread_cond_timedwait.c
+++ b/libpthread/nptl/sysdeps/pthread/pthread_cond_timedwait.c
@@ -39,6 +39,7 @@ struct _condvar_cleanup_buffer
};
int
+attribute_hidden
__pthread_cond_timedwait (
pthread_cond_t *cond,
pthread_mutex_t *mutex,
diff --git a/libpthread/nptl/sysdeps/pthread/pthread_cond_wait.c b/libpthread/nptl/sysdeps/pthread/pthread_cond_wait.c
index 2fac02d83..ad04f151d 100644
--- a/libpthread/nptl/sysdeps/pthread/pthread_cond_wait.c
+++ b/libpthread/nptl/sysdeps/pthread/pthread_cond_wait.c
@@ -89,6 +89,7 @@ __condvar_cleanup (void *arg)
int
+attribute_hidden
__pthread_cond_wait (
pthread_cond_t *cond,
pthread_mutex_t *mutex)
diff --git a/libpthread/nptl/sysdeps/pthread/pthread_rwlock_rdlock.c b/libpthread/nptl/sysdeps/pthread/pthread_rwlock_rdlock.c
index dc00f2a08..af2adb395 100644
--- a/libpthread/nptl/sysdeps/pthread/pthread_rwlock_rdlock.c
+++ b/libpthread/nptl/sysdeps/pthread/pthread_rwlock_rdlock.c
@@ -26,6 +26,7 @@
/* Acquire read lock for RWLOCK. */
int
+attribute_hidden
__pthread_rwlock_rdlock (
pthread_rwlock_t *rwlock)
{
diff --git a/libpthread/nptl/sysdeps/pthread/pthread_rwlock_unlock.c b/libpthread/nptl/sysdeps/pthread/pthread_rwlock_unlock.c
index a7ef71a11..510395e18 100644
--- a/libpthread/nptl/sysdeps/pthread/pthread_rwlock_unlock.c
+++ b/libpthread/nptl/sysdeps/pthread/pthread_rwlock_unlock.c
@@ -25,6 +25,7 @@
/* Unlock RWLOCK. */
int
+attribute_hidden
__pthread_rwlock_unlock (pthread_rwlock_t *rwlock)
{
lll_lock (rwlock->__data.__lock, rwlock->__data.__shared);
diff --git a/libpthread/nptl/sysdeps/pthread/pthread_rwlock_wrlock.c b/libpthread/nptl/sysdeps/pthread/pthread_rwlock_wrlock.c
index 81e6daa56..63eed0bac 100644
--- a/libpthread/nptl/sysdeps/pthread/pthread_rwlock_wrlock.c
+++ b/libpthread/nptl/sysdeps/pthread/pthread_rwlock_wrlock.c
@@ -26,6 +26,7 @@
/* Acquire write lock for RWLOCK. */
int
+attribute_hidden
__pthread_rwlock_wrlock (
pthread_rwlock_t *rwlock)
{