mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-25 04:01:10 +00:00
1100f84983
Implement reference counting of scope records. * elf/dl-close.c (_dl_close): Remove all scopes from removed objects from the list in objects which remain. Always allocate new scope record. * elf/dl-open.c (dl_open_worker): When growing array for scopes, don't resize, allocate a new one. * elf/dl-runtime.c: Update reference counters before using a scope array. * elf/dl-sym.c: Likewise. * elf/dl-libc.c: Adjust for l_scope name change. * elf/dl-load.c: Likewise. * elf/dl-object.c: Likewise. * elf/rtld.c: Likewise. * include/link.h: Inlcude <rtld-lowlevel.h>. Define struct r_scoperec. Replace r_scope with pointer to r_scoperec structure. Add l_scoperec_lock. * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>. * sysdeps/generic/rtld-lowlevel.h: New file. * include/atomic.h: Rename atomic_and to atomic_and_val and atomic_or to atomic_or_val. Define new macros atomic_and and atomic_or which do not return values. * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or. Various cleanups. * sysdeps/i386/i486/bits/atomic.h: Likewise. |
||
---|---|---|
.. | ||
alpha | ||
bits | ||
i386 | ||
ia64 | ||
powerpc | ||
s390 | ||
sh | ||
sparc | ||
x86_64 | ||
aio_misc.h | ||
allocrtsig.c | ||
createthread.c | ||
fork.c | ||
fork.h | ||
getpid.c | ||
Implies | ||
internaltypes.h | ||
jmp-unwind.c | ||
kernel-posix-timers.h | ||
libc_multiple_threads.c | ||
libc_pthread_init.c | ||
libc-lowlevellock.c | ||
lowlevelbarrier.sym | ||
lowlevelcond.sym | ||
lowlevellock.c | ||
lowlevelrobustlock.c | ||
lowlevelrobustlock.sym | ||
lowlevelrwlock.sym | ||
Makefile | ||
mq_notify.c | ||
pt-fork.c | ||
pt-raise.c | ||
pthread_attr_getaffinity.c | ||
pthread_attr_setaffinity.c | ||
pthread_getaffinity.c | ||
pthread_getcpuclockid.c | ||
pthread_kill.c | ||
pthread_mutex_cond_lock.c | ||
pthread_setaffinity.c | ||
pthread_yield.c | ||
pthread-pi-defines.sym | ||
raise.c | ||
register-atfork.c | ||
rtld-lowlevel.h | ||
sem_post.c | ||
sem_timedwait.c | ||
sem_trywait.c | ||
sem_wait.c | ||
sigtimedwait.c | ||
sigwait.c | ||
sigwaitinfo.c | ||
sleep.c | ||
smp.h | ||
timer_create.c | ||
timer_delete.c | ||
timer_getoverr.c | ||
timer_gettime.c | ||
timer_routines.c | ||
timer_settime.c | ||
unregister-atfork.c | ||
unwindbuf.sym | ||
Versions |