PATCH: Unset _dl_dynamic_weak
H . J . Lu
hjl@lucon.org
Tue Sep 11 17:20:00 GMT 2001
On Tue, Sep 11, 2001 at 05:02:03PM -0700, Ulrich Drepper wrote:
> "H . J . Lu" <hjl@lucon.org> writes:
>
> > Ulrich, I ran "make check" with LD_DYNAMIC_WEAK set. I didn't see any
> > problems. Do you have a testcase for it?
>
> It interposing of thread and librt libraries. I won't apply the patch
Which symbols should I watch for? I am enclosing symbols from
/lib/librt.so.1 and /lib/libpthread.so.0.
H.J.
----
# objdump --dynamic-sym /lib/librt.so.1 | grep -v UND | grep GLIBC
000044e4 g DF .text 00000189 GLIBC_2.2 clock_gettime
000053f0 g DF .text 00000188 GLIBC_2.2 shm_open
00004924 g DF .text 000002d3 GLIBC_2.2 timer_create
00002474 w DF .text 0000015a GLIBC_2.1 aio_cancel64
00002474 g DF .text 0000015a GLIBC_2.1 aio_cancel
00004674 g DF .text 000001c5 GLIBC_2.2 clock_settime
00004c04 g DF .text 00000143 GLIBC_2.2 timer_delete
00000000 g DO *ABS* 00000000 GLIBC_2.1 GLIBC_2.1
00004df4 g DF .text 00000133 GLIBC_2.2 timer_gettime
00004414 g DF .text 000000c6 GLIBC_2.2 clock_getres
000025e4 g DF .text 00000053 GLIBC_2.1 aio_fsync
00003304 g DF .text 0000002a GLIBC_2.1 aio_read
00003334 g DF .text 0000002d GLIBC_2.1 aio_read64
000025d0 w DF .text 0000000b GLIBC_2.1 aio_error64
00003384 w DF .text 000002b1 GLIBC_2.1 aio_suspend64
00003384 g DF .text 000002b1 GLIBC_2.1 aio_suspend
000025d0 g DF .text 0000000b GLIBC_2.1 aio_error
000043d4 g DF .text 00000039 GLIBC_2.2 clock_getcpuclockid
00000000 g DO *ABS* 00000000 GLIBC_2.2 GLIBC_2.2
00005580 g DF .text 000000f5 GLIBC_2.2 shm_unlink
00003af4 g DF .text 00000354 GLIBC_2.1 lio_listio64
00004d54 g DF .text 00000090 GLIBC_2.2 timer_getoverrun
00003684 g DF .text 0000002d GLIBC_2.1 aio_write64
00003370 g DF .text 0000000b GLIBC_2.1 aio_return
000025e4 w DF .text 00000053 GLIBC_2.1 aio_fsync64
00002ff0 w DF .text 0000007e GLIBC_2.1 aio_init
00003370 w DF .text 0000000b GLIBC_2.1 aio_return64
00003644 g DF .text 0000002d GLIBC_2.1 aio_write
00004844 g DF .text 000000d3 GLIBC_2.2 clock_nanosleep
00004f34 g DF .text 000002c3 GLIBC_2.2 timer_settime
000036c4 g DF .text 00000425 GLIBC_2.1 lio_listio
# objdump --dynamic-sym /lib/libpthread.so.0 | grep -v UND | grep GLIBC
000089d4 g DF .text 000000d5 GLIBC_2.0 longjmp
00015ef8 g DO .data 00000004 GLIBC_2.0 __libc_internal_tsd_set
00009d40 w DF .text 0000001b GLIBC_2.2 pthread_yield
0000b790 g DF .text 00000055 GLIBC_2.1 sem_trywait
00005710 g DF .text 0000005b GLIBC_2.1 pthread_attr_init
0000e2e0 g DF .text 00000017 GLIBC_2.2 pthread_barrier_destroy
0000d9d0 w DF .text 000000a1 GLIBC_2.2 __pthread_rwlock_trywrlock
00008070 g DF .text 000001ad GLIBC_2.2 pthread_mutex_timedlock
0000c870 w DF .text 0000004f GLIBC_2.0 waitpid
0000c420 w DF .text 00000055 (GLIBC_2.2) lseek64
0000c6f0 w DF .text 0000003e GLIBC_2.0 pause
00006480 g DF .text 00000061 GLIBC_2.0 pthread_cond_signal
00008580 g DF .text 00000007 GLIBC_2.0 __pthread_mutexattr_destroy
0000d8f0 g DF .text 00000019 GLIBC_2.1 pthread_rwlockattr_setkind_np
0000b044 g DF .text 00000213 GLIBC_2.1 sem_wait
0000e100 w DF .text 00000018 GLIBC_2.2 pthread_spin_trylock
000086b0 w DF .text 00000011 GLIBC_2.1 pthread_mutexattr_gettype
00005340 g DF .text 00000007 GLIBC_2.0 pthread_attr_destroy
0000c920 w DF .text 00000051 GLIBC_2.0 recv
0000c220 w DF .text 0000004f GLIBC_2.0 connect
00005680 w DF .text 00000012 GLIBC_2.1 pthread_attr_getstacksize
00008390 g DF .text 0000012e GLIBC_2.0 __pthread_once
00007f00 g DF .text 0000016d GLIBC_2.0 __pthread_mutex_lock
0000abd0 g DF .text 0000009e GLIBC_2.0 pthread_getspecific
0000ca24 g DF .text 0000027d GLIBC_2.1 pthread_rwlock_rdlock
000086b0 w DF .text 00000011 GLIBC_2.0 pthread_mutexattr_getkind_np
0000d910 g DF .text 00000055 GLIBC_2.1 pthread_rwlock_init
00009140 g DF .text 00000161 (GLIBC_2.0) pthread_create
0000d8d0 g DF .text 00000011 GLIBC_2.1 pthread_rwlockattr_getkind_np
00006c40 g DF .text 0000001c GLIBC_2.0 pthread_exit
0000b400 g DF .text 000002ca GLIBC_2.2 sem_timedwait
0000e310 g DF .text 00000007 GLIBC_2.2 pthread_barrierattr_destroy
0000d3b0 g DF .text 00000209 GLIBC_2.2 pthread_rwlock_timedwrlock
0000b810 g DF .text 00000034 GLIBC_2.1 sem_destroy
000065a0 g DF .text 0000001e GLIBC_2.2 pthread_condattr_setpshared
0000d8a0 g DF .text 0000002e GLIBC_2.1 pthread_rwlockattr_setpshared
0000c520 g DF .text 0000004f GLIBC_2.0 __write
000056f0 w DF .text 0000001e GLIBC_2.2 pthread_attr_getstack
0000c690 w DF .text 00000057 GLIBC_2.1 pwrite64
00008590 g DF .text 00000029 GLIBC_2.0 __pthread_mutexattr_settype
0000d910 w DF .text 00000055 GLIBC_2.2 __pthread_rwlock_init
0000aa40 g DF .text 00000083 GLIBC_2.0 __pthread_key_create
0000e0e0 w DF .text 00000013 GLIBC_2.2 pthread_spin_lock
00009850 g DF .text 00000045 GLIBC_2.1 __libc_current_sigrtmax
00006570 g DF .text 00000007 GLIBC_2.0 pthread_condattr_init
0000d2b0 w DF .text 000000f1 GLIBC_2.2 __pthread_rwlock_wrlock
0000e044 g DF .text 0000008e GLIBC_2.2 pthread_getcpuclockid
00005630 w DF .text 00000012 GLIBC_2.1 pthread_attr_getstackaddr
0000a744 g DF .text 00000155 GLIBC_2.0 pthread_key_delete
0000c4d0 g DF .text 0000004f GLIBC_2.0 __read
00005b90 g DF .text 00000093 GLIBC_2.0 _pthread_cleanup_pop
000088d0 g DF .text 000000f1 GLIBC_2.0 __pthread_atfork
0000af20 g DF .text 00000028 GLIBC_2.0 _IO_funlockfile
0000b730 g DF .text 0000005f GLIBC_2.1 sem_init
00015f04 g DO .data 00000004 GLIBC_2.2.3 __libc_rpc_internal_tsd_get
000057a4 g DF .text 00000112 GLIBC_2.0 pthread_cancel
00008580 g DF .text 00000007 GLIBC_2.0 pthread_mutexattr_destroy
00000000 g DO *ABS* 00000000 GLIBC_2.1.1 GLIBC_2.1.1
000099a0 g DF .text 00000010 GLIBC_2.0 pthread_equal
00009d60 g DF .text 00000119 GLIBC_2.1 pthread_create
000084c0 g DF .text 00000034 GLIBC_2.0 __pthread_mutex_init
00009800 g DF .text 00000045 GLIBC_2.1 __libc_current_sigrtmin
0000aef4 g DF .text 00000028 GLIBC_2.0 _IO_flockfile
0000c780 w DF .text 00000044 GLIBC_2.0 system
0000c130 g DF .text 0000004f GLIBC_2.0 __open
00000000 g DO *ABS* 00000000 GLIBC_2.1 GLIBC_2.1
00008ab0 g DF .text 000000d9 GLIBC_2.0 siglongjmp
0000c690 w DF .text 00000057 (GLIBC_2.2) pwrite64
000054e0 g DF .text 00000012 GLIBC_2.0 pthread_attr_getscope
0000d070 w DF .text 00000237 GLIBC_2.2 __pthread_rwlock_tryrdlock
0000d970 g DF .text 00000051 GLIBC_2.1 pthread_rwlock_destroy
0000c270 w DF .text 0000005b GLIBC_2.0 recvfrom
0000c7d0 w DF .text 00000044 GLIBC_2.0 tcdrain
000055f0 w DF .text 00000012 GLIBC_2.1 pthread_attr_getguardsize
0000ca24 w DF .text 0000027d GLIBC_2.2 __pthread_rwlock_rdlock
00005a60 g DF .text 0000008c GLIBC_2.0 pthread_testcancel
0000ddf0 g DF .text 0000005a (GLIBC_2.0) sem_trywait
0000c5d0 w DF .text 00000051 (GLIBC_2.2) pwrite
0000d5c0 g DF .text 00000299 GLIBC_2.1 pthread_rwlock_unlock
00005ce0 g DF .text 000000c1 GLIBC_2.0 _pthread_cleanup_pop_restore
00005490 g DF .text 00000012 GLIBC_2.0 pthread_attr_getinheritsched
0000d5c0 w DF .text 00000299 GLIBC_2.2 __pthread_rwlock_unlock
00009530 w DF .text 00000191 GLIBC_2.0 pthread_kill_other_threads_np
0000b700 g DF .text 00000026 GLIBC_2.1.1 sem_unlink
00009530 g DF .text 00000191 GLIBC_2.1.2 __pthread_kill_other_threads_np
00009b60 w DF .text 0000000e GLIBC_2.0 __pthread_initialize
0000c3d0 w DF .text 0000004f GLIBC_2.0 lseek
0000dba4 g DF .text 000001e3 (GLIBC_2.0) sem_wait
0000c820 g DF .text 00000044 GLIBC_2.0 __wait
00006ae0 g DF .text 00000154 GLIBC_2.0 pthread_detach
0000c8c0 w DF .text 00000051 GLIBC_2.0 send
00005450 g DF .text 00000012 GLIBC_2.0 pthread_attr_getschedpolicy
0000af50 w DF .text 00000028 GLIBC_2.0 ftrylockfile
00005610 w DF .text 00000017 GLIBC_2.1 pthread_attr_setstackaddr
0000c1d0 w DF .text 0000004f GLIBC_2.0 accept
000098a0 g DF .text 0000007a GLIBC_2.1 __libc_allocate_rtsig
00009aa0 g DF .text 000000bb GLIBC_2.0 pthread_getschedparam
000058c0 g DF .text 000000c1 GLIBC_2.0 pthread_setcancelstate
0000c380 w DF .text 0000004a GLIBC_2.0 nanosleep
00015efc g DO .data 00000004 GLIBC_2.0 __libc_internal_tsd_get
00008220 g DF .text 0000016b GLIBC_2.0 __pthread_mutex_unlock
00000000 g DO *ABS* 00000000 GLIBC_2.1.2 GLIBC_2.1.2
0000abd0 g DF .text 0000009e GLIBC_2.0 __pthread_getspecific
00006580 g DF .text 00000007 GLIBC_2.0 pthread_condattr_destroy
0000c520 w DF .text 0000004f GLIBC_2.0 write
000054b0 g DF .text 0000002e GLIBC_2.0 pthread_attr_setscope
0000c630 w DF .text 00000057 (GLIBC_2.2) pread64
00007cf4 g DF .text 00000206 GLIBC_2.0 __pthread_mutex_trylock
00008590 w DF .text 00000029 GLIBC_2.0 pthread_mutexattr_setkind_np
0000e474 g DF .text 0000007d GLIBC_2.2.3 __pthread_clock_settime
0000dd90 g DF .text 00000055 (GLIBC_2.0) sem_init
0000b260 g DF .text 00000161 GLIBC_2.1 sem_post
00005770 g DF .text 0000002c (GLIBC_2.0) pthread_attr_init
0000ccb0 g DF .text 000003b1 GLIBC_2.2 pthread_rwlock_timedrdlock
000064f0 g DF .text 00000070 GLIBC_2.0 pthread_cond_broadcast
00008390 g DF .text 0000012e GLIBC_2.0 pthread_once
0000c8c0 g DF .text 00000051 GLIBC_2.0 __send
00005470 g DF .text 0000001a GLIBC_2.0 pthread_attr_setinheritsched
000099b0 g DF .text 000000e7 GLIBC_2.0 pthread_setschedparam
0000e320 g DF .text 00000019 GLIBC_2.2 pthread_barrierattr_setpshared
0000aa40 g DF .text 00000083 GLIBC_2.0 pthread_key_create
0000c820 w DF .text 00000044 GLIBC_2.0 wait
00009c70 w DF .text 0000001d GLIBC_2.1 pthread_setconcurrency
0000c180 w DF .text 0000004f (GLIBC_2.2) open64
00008500 g DF .text 00000067 GLIBC_2.0 __pthread_mutex_destroy
0000e300 g DF .text 00000010 GLIBC_2.2 pthread_barrierattr_init
00000000 g DO *ABS* 00000000 GLIBC_2.0 GLIBC_2.0
0000b6d0 g DF .text 00000026 GLIBC_2.1.1 sem_close
0000a3a0 g DF .text 00000099 GLIBC_2.0 pthread_kill
0000c4d0 w DF .text 0000004f GLIBC_2.0 read
00005500 g DF .text 000000c7 GLIBC_2.2.3 pthread_getattr_np
0000c630 w DF .text 00000057 GLIBC_2.1 pread64
00005650 w DF .text 00000025 GLIBC_2.1 pthread_attr_setstacksize
0000c980 w DF .text 0000004f GLIBC_2.0 sendmsg
0000c630 g DF .text 00000057 GLIBC_2.1 __pread64
0000d2b0 g DF .text 000000f1 GLIBC_2.1 pthread_rwlock_wrlock
0000d880 g DF .text 00000012 GLIBC_2.1 pthread_rwlockattr_getpshared
0000af50 g DF .text 00000028 GLIBC_2.0 _IO_ftrylockfile
0000e140 w DF .text 00000007 GLIBC_2.2 pthread_spin_destroy
0000c2d0 w DF .text 0000005b GLIBC_2.0 sendto
0000af20 w DF .text 00000028 GLIBC_2.0 funlockfile
0000a2d0 g DF .text 000000d0 GLIBC_2.0 pthread_sigmask
0000c630 g DF .text 00000057 (GLIBC_2.2) __pread64
00006440 g DF .text 0000001e GLIBC_2.0 pthread_cond_init
0000e120 w DF .text 00000010 GLIBC_2.2 pthread_spin_unlock
0000d860 g DF .text 00000017 GLIBC_2.1 pthread_rwlockattr_init
00008800 w DF .text 000000c6 GLIBC_2.0 fork
00008680 w DF .text 00000010 GLIBC_2.2 pthread_mutexattr_getpshared
00000000 g DO *ABS* 00000000 GLIBC_2.2.3 GLIBC_2.2.3
0000a440 g DF .text 0000010e GLIBC_2.0 sigaction
00008570 g DF .text 00000010 GLIBC_2.0 __pthread_mutexattr_init
00000000 g DO *ABS* 00000000 GLIBC_2.2 GLIBC_2.2
00006590 g DF .text 00000010 GLIBC_2.2 pthread_condattr_getpshared
00005c30 g DF .text 000000a3 GLIBC_2.0 _pthread_cleanup_push_defer
0000d970 w DF .text 00000051 GLIBC_2.2 __pthread_rwlock_destroy
0000e2a0 g DF .text 00000037 GLIBC_2.2 pthread_barrier_init
000056a0 w DF .text 0000004c GLIBC_2.2 pthread_attr_setstack
0000c180 w DF .text 0000004f GLIBC_2.1 open64
00008590 w DF .text 00000029 GLIBC_2.1 pthread_mutexattr_settype
00008690 w DF .text 0000001e GLIBC_2.2 pthread_mutexattr_setpshared
00005370 g DF .text 00000011 GLIBC_2.0 pthread_attr_getdetachstate
0000c3d0 g DF .text 0000004f GLIBC_2.0 __lseek
0000e364 g DF .text 000000fd GLIBC_2.2.3 __pthread_clock_gettime
00008220 g DF .text 0000016b GLIBC_2.0 pthread_mutex_unlock
0000adf0 g DF .text 00000071 GLIBC_2.0 __h_errno_location
0000e154 g DF .text 00000145 GLIBC_2.2 pthread_barrier_wait
0000ae70 g DF .text 00000071 GLIBC_2.2 __res_state
00008724 g DF .text 000000d2 GLIBC_2.1.2 __vfork
0000c330 w DF .text 0000004f GLIBC_2.0 msync
0000da80 g DF .text 00000007 GLIBC_2.1 pthread_rwlockattr_destroy
0000b3d0 g DF .text 00000023 GLIBC_2.1.1 sem_open
0000aef4 w DF .text 00000028 GLIBC_2.0 flockfile
00008724 w DF .text 000000d2 GLIBC_2.0 vfork
0000d9d0 g DF .text 000000a1 GLIBC_2.1 pthread_rwlock_trywrlock
0000d070 g DF .text 00000237 GLIBC_2.1 pthread_rwlock_tryrdlock
0000c730 w DF .text 00000044 GLIBC_2.0 fsync
0000c220 g DF .text 0000004f GLIBC_2.0 __connect
0000c570 w DF .text 00000051 GLIBC_2.1 pread
00005af0 g DF .text 00000093 GLIBC_2.0 _pthread_cleanup_push
00009920 g DF .text 00000071 GLIBC_2.0 pthread_self
00005990 g DF .text 000000c1 GLIBC_2.0 pthread_setcanceltype
0000e130 w DF .text 00000010 GLIBC_2.2 pthread_spin_init
00008570 g DF .text 00000010 GLIBC_2.0 pthread_mutexattr_init
0000b7f0 g DF .text 00000012 GLIBC_2.1 sem_getvalue
0000c480 g DF .text 00000044 GLIBC_2.0 __close
0000c690 g DF .text 00000057 (GLIBC_2.2) __pwrite64
00008500 g DF .text 00000067 GLIBC_2.0 pthread_mutex_destroy
00007f00 g DF .text 0000016d GLIBC_2.0 pthread_mutex_lock
0000a440 g DF .text 0000010e GLIBC_2.0 __sigaction
00005e84 g DF .text 0000027e GLIBC_2.0 pthread_cond_wait
0000df10 g DF .text 00000032 (GLIBC_2.0) sem_destroy
0000ad74 g DF .text 0000006d GLIBC_2.0 __errno_location
000055d0 w DF .text 0000001c GLIBC_2.1 pthread_attr_setguardsize
0000aad0 g DF .text 000000f9 GLIBC_2.0 __pthread_setspecific
00007cf4 g DF .text 00000206 GLIBC_2.0 pthread_mutex_trylock
000088d0 g DF .text 000000f1 GLIBC_2.0 pthread_atfork
0000c690 g DF .text 00000057 GLIBC_2.1 __pwrite64
0000dee0 g DF .text 00000028 (GLIBC_2.0) sem_getvalue
0000de50 g DF .text 00000082 (GLIBC_2.0) sem_post
00006460 g DF .text 00000017 GLIBC_2.0 pthread_cond_destroy
00015f00 g DO .data 00000004 GLIBC_2.2.3 __libc_rpc_internal_tsd_set
00005430 g DF .text 0000001a GLIBC_2.0 pthread_attr_setschedpolicy
000084c0 g DF .text 00000034 GLIBC_2.0 pthread_mutex_init
0000c420 w DF .text 00000055 GLIBC_2.1 lseek64
0000c130 w DF .text 0000004f GLIBC_2.0 open
0000c0d4 g DF .text 0000004f GLIBC_2.0 __fcntl
00008800 g DF .text 000000c6 GLIBC_2.0 __fork
00005394 g DF .text 00000067 GLIBC_2.0 pthread_attr_setschedparam
00005350 g DF .text 00000019 GLIBC_2.0 pthread_attr_setdetachstate
0000c9d0 w DF .text 0000004f GLIBC_2.0 recvmsg
0000c0d4 w DF .text 0000004f GLIBC_2.0 fcntl
00006810 g DF .text 000002c5 GLIBC_2.0 pthread_join
0000c180 g DF .text 0000004f GLIBC_2.2 __open64
00009c50 w DF .text 00000018 GLIBC_2.1 pthread_getconcurrency
00006560 g DF .text 0000000e GLIBC_2.0 pthread_cond_timedwait
0000a044 g DF .text 000001c5 GLIBC_2.0 sigwait
0000c5d0 w DF .text 00000051 GLIBC_2.1 pwrite
0000c480 w DF .text 00000044 GLIBC_2.0 close
00005400 g DF .text 00000024 GLIBC_2.0 pthread_attr_getschedparam
0000c570 w DF .text 00000051 (GLIBC_2.2) pread
0000aad0 g DF .text 000000f9 GLIBC_2.0 pthread_setspecific
0000a210 g DF .text 000000b8 GLIBC_2.0 raise
More information about the Libc-alpha
mailing list