OSDN Git Service

nptl: mark symbols with libc forwarder hidden
authorTimo Teräs <timo.teras@iki.fi>
Wed, 14 Apr 2010 17:01:33 +0000 (20:01 +0300)
committerAustin Foxley <austinf@cetoncorp.com>
Wed, 14 Apr 2010 17:53:08 +0000 (10:53 -0700)
commit1610762362e651f86ca284ac59a1d7ec88034e4e
treedd0950ba51eb7cd72d4f2ae67ee262d51394994b
parentbd881300eb5380e4bd636b092b706b4b31def7fb
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>
71 files changed:
libpthread/nptl/cleanup_defer_compat.c
libpthread/nptl/init.c
libpthread/nptl/pt-cleanup.c
libpthread/nptl/pthread_attr_destroy.c
libpthread/nptl/pthread_attr_getdetachstate.c
libpthread/nptl/pthread_attr_getinheritsched.c
libpthread/nptl/pthread_attr_getschedparam.c
libpthread/nptl/pthread_attr_getschedpolicy.c
libpthread/nptl/pthread_attr_getscope.c
libpthread/nptl/pthread_attr_init.c
libpthread/nptl/pthread_attr_setdetachstate.c
libpthread/nptl/pthread_attr_setinheritsched.c
libpthread/nptl/pthread_attr_setschedparam.c
libpthread/nptl/pthread_attr_setschedpolicy.c
libpthread/nptl/pthread_attr_setscope.c
libpthread/nptl/pthread_cond_destroy.c
libpthread/nptl/pthread_cond_init.c
libpthread/nptl/pthread_condattr_destroy.c
libpthread/nptl/pthread_condattr_init.c
libpthread/nptl/pthread_create.c
libpthread/nptl/pthread_equal.c
libpthread/nptl/pthread_exit.c
libpthread/nptl/pthread_getschedparam.c
libpthread/nptl/pthread_getspecific.c
libpthread/nptl/pthread_key_create.c
libpthread/nptl/pthread_mutex_destroy.c
libpthread/nptl/pthread_mutex_init.c
libpthread/nptl/pthread_mutex_lock.c
libpthread/nptl/pthread_mutex_unlock.c
libpthread/nptl/pthread_self.c
libpthread/nptl/pthread_setcancelstate.c
libpthread/nptl/pthread_setcanceltype.c
libpthread/nptl/pthread_setschedparam.c
libpthread/nptl/pthread_setspecific.c
libpthread/nptl/sysdeps/pthread/pthread_cond_broadcast.c
libpthread/nptl/sysdeps/pthread/pthread_cond_signal.c
libpthread/nptl/sysdeps/pthread/pthread_cond_timedwait.c
libpthread/nptl/sysdeps/pthread/pthread_cond_wait.c
libpthread/nptl/sysdeps/pthread/pthread_rwlock_rdlock.c
libpthread/nptl/sysdeps/pthread/pthread_rwlock_unlock.c
libpthread/nptl/sysdeps/pthread/pthread_rwlock_wrlock.c
libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pthread_once.c
libpthread/nptl/sysdeps/unix/sysv/linux/arm/pthread_once.c
libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S
libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S
libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S
libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S
libpthread/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S
libpthread/nptl/sysdeps/unix/sysv/linux/i386/pthread_once.S
libpthread/nptl/sysdeps/unix/sysv/linux/mips/pthread_once.c
libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pthread_once.c
libpthread/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_broadcast.S
libpthread/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S
libpthread/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S
libpthread/nptl/sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S
libpthread/nptl/sysdeps/unix/sysv/linux/sh/pthread_once.S
libpthread/nptl/sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S
libpthread/nptl/sysdeps/unix/sysv/linux/sh/pthread_rwlock_unlock.S
libpthread/nptl/sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S
libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pthread_once.c
libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S
libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_once.S
libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S
libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S
libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S
libpthread/nptl/unwind.c