From 124af9f4b2b77b1510d88cfc8092c788d7e513c7 Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Fri, 20 May 2005 19:02:51 +0000 Subject: Back out nptl changes, which for now will be done in branches/uClibc-nptl --- libpthread/linuxthreads/Makefile | 5 +- .../sysdeps/pthread/bits/pthreadtypes.h | 38 +- libpthread/nptl/ANNOUNCE | 92 - libpthread/nptl/Banner | 1 - libpthread/nptl/ChangeLog | 7160 -------------------- libpthread/nptl/DESIGN-barrier.txt | 44 - libpthread/nptl/DESIGN-condvar.txt | 134 - libpthread/nptl/DESIGN-rwlock.txt | 113 - libpthread/nptl/DESIGN-sem.txt | 46 - libpthread/nptl/Makefile | 592 -- libpthread/nptl/TODO | 12 - libpthread/nptl/TODO-kernel | 20 - libpthread/nptl/TODO-testing | 20 - libpthread/nptl/alloca_cutoff.c | 36 - libpthread/nptl/allocatestack.c | 947 --- libpthread/nptl/cancellation.c | 90 - libpthread/nptl/cleanup.c | 49 - libpthread/nptl/cleanup_compat.c | 55 - libpthread/nptl/cleanup_defer.c | 92 - libpthread/nptl/cleanup_defer_compat.c | 98 - libpthread/nptl/cleanup_routine.c | 28 - libpthread/nptl/descr.h | 259 - libpthread/nptl/eintr.c | 89 - libpthread/nptl/events.c | 34 - libpthread/nptl/forward.c | 202 - libpthread/nptl/herrno.c | 35 - libpthread/nptl/init.c | 344 - libpthread/nptl/libc-cancellation.c | 116 - libpthread/nptl/pt-allocrtsig.c | 51 - libpthread/nptl/pt-cleanup.c | 64 - libpthread/nptl/pt-system.c | 33 - libpthread/nptl/pthreadP.h | 466 -- libpthread/nptl/pthread_atfork.c | 63 - libpthread/nptl/pthread_attr_destroy.c | 40 - libpthread/nptl/pthread_attr_getdetachstate.c | 39 - libpthread/nptl/pthread_attr_getguardsize.c | 37 - libpthread/nptl/pthread_attr_getinheritsched.c | 40 - libpthread/nptl/pthread_attr_getschedparam.c | 40 - libpthread/nptl/pthread_attr_getschedpolicy.c | 39 - libpthread/nptl/pthread_attr_getscope.c | 40 - libpthread/nptl/pthread_attr_getstack.c | 41 - libpthread/nptl/pthread_attr_getstackaddr.c | 45 - libpthread/nptl/pthread_attr_getstacksize.c | 40 - libpthread/nptl/pthread_attr_init.c | 51 - libpthread/nptl/pthread_attr_setdetachstate.c | 48 - libpthread/nptl/pthread_attr_setguardsize.c | 40 - libpthread/nptl/pthread_attr_setinheritsched.c | 47 - libpthread/nptl/pthread_attr_setschedparam.c | 42 - libpthread/nptl/pthread_attr_setschedpolicy.c | 47 - libpthread/nptl/pthread_attr_setscope.c | 51 - libpthread/nptl/pthread_attr_setstack.c | 52 - libpthread/nptl/pthread_attr_setstackaddr.c | 47 - libpthread/nptl/pthread_attr_setstacksize.c | 45 - libpthread/nptl/pthread_barrier_destroy.c | 44 - libpthread/nptl/pthread_barrier_init.c | 57 - libpthread/nptl/pthread_barrierattr_destroy.c | 30 - libpthread/nptl/pthread_barrierattr_getpshared.c | 31 - libpthread/nptl/pthread_barrierattr_init.c | 30 - libpthread/nptl/pthread_barrierattr_setpshared.c | 40 - libpthread/nptl/pthread_cancel.c | 104 - libpthread/nptl/pthread_clock_gettime.c | 69 - libpthread/nptl/pthread_clock_settime.c | 56 - libpthread/nptl/pthread_cond_destroy.c | 60 - libpthread/nptl/pthread_cond_init.c | 45 - libpthread/nptl/pthread_condattr_destroy.c | 30 - libpthread/nptl/pthread_condattr_getclock.c | 31 - libpthread/nptl/pthread_condattr_getpshared.c | 31 - libpthread/nptl/pthread_condattr_init.c | 32 - libpthread/nptl/pthread_condattr_setclock.c | 72 - libpthread/nptl/pthread_condattr_setpshared.c | 37 - libpthread/nptl/pthread_create.c | 517 -- libpthread/nptl/pthread_detach.c | 57 - libpthread/nptl/pthread_equal.c | 30 - libpthread/nptl/pthread_exit.c | 32 - libpthread/nptl/pthread_getattr_np.c | 177 - libpthread/nptl/pthread_getconcurrency.c | 27 - libpthread/nptl/pthread_getschedparam.c | 81 - libpthread/nptl/pthread_getspecific.c | 69 - libpthread/nptl/pthread_join.c | 108 - libpthread/nptl/pthread_key_create.c | 63 - libpthread/nptl/pthread_key_delete.c | 43 - libpthread/nptl/pthread_mutex_destroy.c | 34 - libpthread/nptl/pthread_mutex_init.c | 58 - libpthread/nptl/pthread_mutex_lock.c | 119 - libpthread/nptl/pthread_mutex_timedlock.c | 118 - libpthread/nptl/pthread_mutex_trylock.c | 77 - libpthread/nptl/pthread_mutex_unlock.c | 78 - libpthread/nptl/pthread_mutexattr_destroy.c | 29 - libpthread/nptl/pthread_mutexattr_getpshared.c | 38 - libpthread/nptl/pthread_mutexattr_gettype.c | 38 - libpthread/nptl/pthread_mutexattr_init.c | 38 - libpthread/nptl/pthread_mutexattr_setpshared.c | 45 - libpthread/nptl/pthread_mutexattr_settype.c | 43 - libpthread/nptl/pthread_rwlock_destroy.c | 30 - libpthread/nptl/pthread_rwlock_init.c | 51 - libpthread/nptl/pthread_rwlock_tryrdlock.c | 50 - libpthread/nptl/pthread_rwlock_trywrlock.c | 43 - libpthread/nptl/pthread_rwlockattr_destroy.c | 30 - libpthread/nptl/pthread_rwlockattr_getkind_np.c | 31 - libpthread/nptl/pthread_rwlockattr_getpshared.c | 31 - libpthread/nptl/pthread_rwlockattr_init.c | 35 - libpthread/nptl/pthread_rwlockattr_setkind_np.c | 41 - libpthread/nptl/pthread_rwlockattr_setpshared.c | 40 - libpthread/nptl/pthread_self.c | 29 - libpthread/nptl/pthread_setcancelstate.c | 73 - libpthread/nptl/pthread_setcanceltype.c | 76 - libpthread/nptl/pthread_setconcurrency.c | 41 - libpthread/nptl/pthread_setegid.c | 3 - libpthread/nptl/pthread_seteuid.c | 3 - libpthread/nptl/pthread_setgid.c | 3 - libpthread/nptl/pthread_setregid.c | 3 - libpthread/nptl/pthread_setresgid.c | 3 - libpthread/nptl/pthread_setresuid.c | 3 - libpthread/nptl/pthread_setreuid.c | 3 - libpthread/nptl/pthread_setschedparam.c | 67 - libpthread/nptl/pthread_setschedprio.c | 66 - libpthread/nptl/pthread_setspecific.c | 96 - libpthread/nptl/pthread_setuid.c | 3 - libpthread/nptl/pthread_testcancel.c | 28 - libpthread/nptl/pthread_timedjoin.c | 107 - libpthread/nptl/pthread_tryjoin.c | 75 - libpthread/nptl/res.c | 27 - libpthread/nptl/sem_close.c | 81 - libpthread/nptl/sem_destroy.c | 33 - libpthread/nptl/sem_getvalue.c | 37 - libpthread/nptl/sem_init.c | 50 - libpthread/nptl/sem_open.c | 404 -- libpthread/nptl/sem_unlink.c | 67 - libpthread/nptl/semaphore.h | 79 - libpthread/nptl/semaphoreP.h | 67 - libpthread/nptl/sysdeps/alpha/Makefile | 21 - libpthread/nptl/sysdeps/alpha/elf/pt-initfini.c | 89 - libpthread/nptl/sysdeps/alpha/jmpbuf-unwind.h | 31 - libpthread/nptl/sysdeps/alpha/pthread_spin_lock.S | 45 - .../nptl/sysdeps/alpha/pthread_spin_trylock.S | 46 - libpthread/nptl/sysdeps/alpha/pthreaddef.h | 38 - libpthread/nptl/sysdeps/alpha/tcb-offsets.sym | 14 - libpthread/nptl/sysdeps/alpha/tls.h | 129 - libpthread/nptl/sysdeps/i386/Makefile | 27 - .../nptl/sysdeps/i386/i486/pthread_spin_trylock.S | 47 - .../nptl/sysdeps/i386/i586/pthread_spin_trylock.S | 20 - libpthread/nptl/sysdeps/i386/i686/Makefile | 32 - .../nptl/sysdeps/i386/i686/pthread_spin_trylock.S | 21 - libpthread/nptl/sysdeps/i386/i686/tls.h | 36 - libpthread/nptl/sysdeps/i386/jmpbuf-unwind.h | 31 - libpthread/nptl/sysdeps/i386/pthread_spin_init.c | 20 - libpthread/nptl/sysdeps/i386/pthread_spin_lock.c | 49 - libpthread/nptl/sysdeps/i386/pthread_spin_unlock.S | 32 - libpthread/nptl/sysdeps/i386/pthreaddef.h | 48 - libpthread/nptl/sysdeps/i386/tcb-offsets.sym | 13 - libpthread/nptl/sysdeps/i386/tls.h | 419 -- libpthread/nptl/sysdeps/mips/Makefile | 25 - libpthread/nptl/sysdeps/mips/jmpbuf-unwind.h | 30 - libpthread/nptl/sysdeps/mips/nptl-sysdep.S | 2 - libpthread/nptl/sysdeps/mips/pthread_spin_lock.S | 37 - .../nptl/sysdeps/mips/pthread_spin_trylock.S | 41 - libpthread/nptl/sysdeps/mips/pthreaddef.h | 39 - libpthread/nptl/sysdeps/mips/tcb-offsets.sym | 11 - libpthread/nptl/sysdeps/mips/tls.h | 161 - libpthread/nptl/sysdeps/powerpc/Makefile | 21 - libpthread/nptl/sysdeps/powerpc/jmpbuf-unwind.h | 31 - .../nptl/sysdeps/powerpc/pthread_spin_lock.c | 45 - .../nptl/sysdeps/powerpc/pthread_spin_trylock.c | 43 - libpthread/nptl/sysdeps/powerpc/pthreaddef.h | 41 - libpthread/nptl/sysdeps/powerpc/tcb-offsets.sym | 16 - libpthread/nptl/sysdeps/powerpc/tls.h | 165 - libpthread/nptl/sysdeps/pthread/bits/libc-lock.h | 568 -- libpthread/nptl/sysdeps/pthread/bits/sigthread.h | 38 - libpthread/nptl/sysdeps/pthread/bits/stdio-lock.h | 105 - libpthread/nptl/sysdeps/pthread/list.h | 114 - libpthread/nptl/sysdeps/sh/Makefile | 3 - libpthread/nptl/sysdeps/sh/jmpbuf-unwind.h | 31 - libpthread/nptl/sysdeps/sh/pthread_spin_init.c | 20 - libpthread/nptl/sysdeps/sh/pthread_spin_lock.c | 35 - libpthread/nptl/sysdeps/sh/pthread_spin_trylock.S | 32 - libpthread/nptl/sysdeps/sh/pthread_spin_unlock.S | 30 - libpthread/nptl/sysdeps/sh/pthreaddef.h | 49 - libpthread/nptl/sysdeps/sh/tcb-offsets.sym | 11 - libpthread/nptl/sysdeps/sh/tls.h | 145 - libpthread/nptl/sysdeps/sparc/Makefile | 3 - .../nptl/sysdeps/sparc/sparc32/jmpbuf-unwind.h | 31 - .../nptl/sysdeps/sparc/sparc32/pthread_spin_lock.c | 40 - .../sysdeps/sparc/sparc32/pthread_spin_trylock.c | 29 - libpthread/nptl/sysdeps/sparc/sparc32/pthreaddef.h | 40 - .../sparc/sparc32/sparcv9/pthread_spin_lock.c | 39 - .../sparc/sparc32/sparcv9/pthread_spin_trylock.c | 1 - .../sparc/sparc32/sparcv9/pthread_spin_unlock.c | 1 - .../nptl/sysdeps/sparc/sparc64/jmpbuf-unwind.h | 31 - .../nptl/sysdeps/sparc/sparc64/pthread_spin_lock.c | 39 - .../sysdeps/sparc/sparc64/pthread_spin_trylock.c | 34 - .../sysdeps/sparc/sparc64/pthread_spin_unlock.c | 30 - libpthread/nptl/sysdeps/sparc/sparc64/pthreaddef.h | 40 - libpthread/nptl/sysdeps/sparc/tcb-offsets.sym | 6 - libpthread/nptl/sysdeps/sparc/tls.h | 129 - libpthread/nptl/sysdeps/x86_64/Makefile | 28 - libpthread/nptl/sysdeps/x86_64/jmpbuf-unwind.h | 31 - libpthread/nptl/sysdeps/x86_64/pthread_spin_init.c | 1 - libpthread/nptl/sysdeps/x86_64/pthread_spin_lock.c | 1 - .../nptl/sysdeps/x86_64/pthread_spin_trylock.S | 40 - .../nptl/sysdeps/x86_64/pthread_spin_unlock.S | 31 - libpthread/nptl/sysdeps/x86_64/pthreaddef.h | 54 - libpthread/nptl/sysdeps/x86_64/tcb-offsets.sym | 12 - libpthread/nptl/sysdeps/x86_64/tls.h | 323 - libpthread/nptl/unwind.c | 176 - libpthread/nptl/vars.c | 43 - libpthread/nptl_db/ChangeLog | 207 - libpthread/nptl_db/Makefile | 60 - libpthread/nptl_db/Versions | 24 - libpthread/nptl_db/db_info.c | 103 - libpthread/nptl_db/fetch-value.c | 284 - libpthread/nptl_db/proc_service.h | 87 - libpthread/nptl_db/structs.def | 86 - libpthread/nptl_db/td_init.c | 32 - libpthread/nptl_db/td_log.c | 32 - libpthread/nptl_db/td_symbol_list.c | 85 - libpthread/nptl_db/td_ta_clear_event.c | 79 - libpthread/nptl_db/td_ta_delete.c | 42 - libpthread/nptl_db/td_ta_enable_stats.c | 35 - libpthread/nptl_db/td_ta_event_addr.c | 61 - libpthread/nptl_db/td_ta_event_getmsg.c | 105 - libpthread/nptl_db/td_ta_get_nthreads.c | 42 - libpthread/nptl_db/td_ta_get_ph.c | 36 - libpthread/nptl_db/td_ta_get_stats.c | 35 - libpthread/nptl_db/td_ta_map_id2thr.c | 38 - libpthread/nptl_db/td_ta_map_lwp2thr.c | 178 - libpthread/nptl_db/td_ta_new.c | 65 - libpthread/nptl_db/td_ta_reset_stats.c | 35 - libpthread/nptl_db/td_ta_set_event.c | 79 - libpthread/nptl_db/td_ta_setconcurrency.c | 35 - libpthread/nptl_db/td_ta_thr_iter.c | 148 - libpthread/nptl_db/td_ta_tsd_iter.c | 81 - libpthread/nptl_db/td_thr_clear_event.c | 77 - libpthread/nptl_db/td_thr_dbresume.c | 30 - libpthread/nptl_db/td_thr_dbsuspend.c | 30 - libpthread/nptl_db/td_thr_event_enable.c | 34 - libpthread/nptl_db/td_thr_event_getmsg.c | 119 - libpthread/nptl_db/td_thr_get_info.c | 110 - libpthread/nptl_db/td_thr_getfpregs.c | 53 - libpthread/nptl_db/td_thr_getgregs.c | 53 - libpthread/nptl_db/td_thr_getxregs.c | 30 - libpthread/nptl_db/td_thr_getxregsize.c | 30 - libpthread/nptl_db/td_thr_set_event.c | 77 - libpthread/nptl_db/td_thr_setfpregs.c | 50 - libpthread/nptl_db/td_thr_setgregs.c | 50 - libpthread/nptl_db/td_thr_setprio.c | 30 - libpthread/nptl_db/td_thr_setsigpending.c | 31 - libpthread/nptl_db/td_thr_setxregs.c | 30 - libpthread/nptl_db/td_thr_sigsetmask.c | 30 - libpthread/nptl_db/td_thr_tls_get_addr.c | 43 - libpthread/nptl_db/td_thr_tlsbase.c | 50 - libpthread/nptl_db/td_thr_tsd.c | 96 - libpthread/nptl_db/td_thr_validate.c | 91 - libpthread/nptl_db/thread_db.h | 459 -- libpthread/nptl_db/thread_dbP.h | 254 - 254 files changed, 8 insertions(+), 25199 deletions(-) delete mode 100644 libpthread/nptl/ANNOUNCE delete mode 100644 libpthread/nptl/Banner delete mode 100644 libpthread/nptl/ChangeLog delete mode 100644 libpthread/nptl/DESIGN-barrier.txt delete mode 100644 libpthread/nptl/DESIGN-condvar.txt delete mode 100644 libpthread/nptl/DESIGN-rwlock.txt delete mode 100644 libpthread/nptl/DESIGN-sem.txt delete mode 100644 libpthread/nptl/Makefile delete mode 100644 libpthread/nptl/TODO delete mode 100644 libpthread/nptl/TODO-kernel delete mode 100644 libpthread/nptl/TODO-testing delete mode 100644 libpthread/nptl/alloca_cutoff.c delete mode 100644 libpthread/nptl/allocatestack.c delete mode 100644 libpthread/nptl/cancellation.c delete mode 100644 libpthread/nptl/cleanup.c delete mode 100644 libpthread/nptl/cleanup_compat.c delete mode 100644 libpthread/nptl/cleanup_defer.c delete mode 100644 libpthread/nptl/cleanup_defer_compat.c delete mode 100644 libpthread/nptl/cleanup_routine.c delete mode 100644 libpthread/nptl/descr.h delete mode 100644 libpthread/nptl/eintr.c delete mode 100644 libpthread/nptl/events.c delete mode 100644 libpthread/nptl/forward.c delete mode 100644 libpthread/nptl/herrno.c delete mode 100644 libpthread/nptl/init.c delete mode 100644 libpthread/nptl/libc-cancellation.c delete mode 100644 libpthread/nptl/pt-allocrtsig.c delete mode 100644 libpthread/nptl/pt-cleanup.c delete mode 100644 libpthread/nptl/pt-system.c delete mode 100644 libpthread/nptl/pthreadP.h delete mode 100644 libpthread/nptl/pthread_atfork.c delete mode 100644 libpthread/nptl/pthread_attr_destroy.c delete mode 100644 libpthread/nptl/pthread_attr_getdetachstate.c delete mode 100644 libpthread/nptl/pthread_attr_getguardsize.c delete mode 100644 libpthread/nptl/pthread_attr_getinheritsched.c delete mode 100644 libpthread/nptl/pthread_attr_getschedparam.c delete mode 100644 libpthread/nptl/pthread_attr_getschedpolicy.c delete mode 100644 libpthread/nptl/pthread_attr_getscope.c delete mode 100644 libpthread/nptl/pthread_attr_getstack.c delete mode 100644 libpthread/nptl/pthread_attr_getstackaddr.c delete mode 100644 libpthread/nptl/pthread_attr_getstacksize.c delete mode 100644 libpthread/nptl/pthread_attr_init.c delete mode 100644 libpthread/nptl/pthread_attr_setdetachstate.c delete mode 100644 libpthread/nptl/pthread_attr_setguardsize.c delete mode 100644 libpthread/nptl/pthread_attr_setinheritsched.c delete mode 100644 libpthread/nptl/pthread_attr_setschedparam.c delete mode 100644 libpthread/nptl/pthread_attr_setschedpolicy.c delete mode 100644 libpthread/nptl/pthread_attr_setscope.c delete mode 100644 libpthread/nptl/pthread_attr_setstack.c delete mode 100644 libpthread/nptl/pthread_attr_setstackaddr.c delete mode 100644 libpthread/nptl/pthread_attr_setstacksize.c delete mode 100644 libpthread/nptl/pthread_barrier_destroy.c delete mode 100644 libpthread/nptl/pthread_barrier_init.c delete mode 100644 libpthread/nptl/pthread_barrierattr_destroy.c delete mode 100644 libpthread/nptl/pthread_barrierattr_getpshared.c delete mode 100644 libpthread/nptl/pthread_barrierattr_init.c delete mode 100644 libpthread/nptl/pthread_barrierattr_setpshared.c delete mode 100644 libpthread/nptl/pthread_cancel.c delete mode 100644 libpthread/nptl/pthread_clock_gettime.c delete mode 100644 libpthread/nptl/pthread_clock_settime.c delete mode 100644 libpthread/nptl/pthread_cond_destroy.c delete mode 100644 libpthread/nptl/pthread_cond_init.c delete mode 100644 libpthread/nptl/pthread_condattr_destroy.c delete mode 100644 libpthread/nptl/pthread_condattr_getclock.c delete mode 100644 libpthread/nptl/pthread_condattr_getpshared.c delete mode 100644 libpthread/nptl/pthread_condattr_init.c delete mode 100644 libpthread/nptl/pthread_condattr_setclock.c delete mode 100644 libpthread/nptl/pthread_condattr_setpshared.c delete mode 100644 libpthread/nptl/pthread_create.c delete mode 100644 libpthread/nptl/pthread_detach.c delete mode 100644 libpthread/nptl/pthread_equal.c delete mode 100644 libpthread/nptl/pthread_exit.c delete mode 100644 libpthread/nptl/pthread_getattr_np.c delete mode 100644 libpthread/nptl/pthread_getconcurrency.c delete mode 100644 libpthread/nptl/pthread_getschedparam.c delete mode 100644 libpthread/nptl/pthread_getspecific.c delete mode 100644 libpthread/nptl/pthread_join.c delete mode 100644 libpthread/nptl/pthread_key_create.c delete mode 100644 libpthread/nptl/pthread_key_delete.c delete mode 100644 libpthread/nptl/pthread_mutex_destroy.c delete mode 100644 libpthread/nptl/pthread_mutex_init.c delete mode 100644 libpthread/nptl/pthread_mutex_lock.c delete mode 100644 libpthread/nptl/pthread_mutex_timedlock.c delete mode 100644 libpthread/nptl/pthread_mutex_trylock.c delete mode 100644 libpthread/nptl/pthread_mutex_unlock.c delete mode 100644 libpthread/nptl/pthread_mutexattr_destroy.c delete mode 100644 libpthread/nptl/pthread_mutexattr_getpshared.c delete mode 100644 libpthread/nptl/pthread_mutexattr_gettype.c delete mode 100644 libpthread/nptl/pthread_mutexattr_init.c delete mode 100644 libpthread/nptl/pthread_mutexattr_setpshared.c delete mode 100644 libpthread/nptl/pthread_mutexattr_settype.c delete mode 100644 libpthread/nptl/pthread_rwlock_destroy.c delete mode 100644 libpthread/nptl/pthread_rwlock_init.c delete mode 100644 libpthread/nptl/pthread_rwlock_tryrdlock.c delete mode 100644 libpthread/nptl/pthread_rwlock_trywrlock.c delete mode 100644 libpthread/nptl/pthread_rwlockattr_destroy.c delete mode 100644 libpthread/nptl/pthread_rwlockattr_getkind_np.c delete mode 100644 libpthread/nptl/pthread_rwlockattr_getpshared.c delete mode 100644 libpthread/nptl/pthread_rwlockattr_init.c delete mode 100644 libpthread/nptl/pthread_rwlockattr_setkind_np.c delete mode 100644 libpthread/nptl/pthread_rwlockattr_setpshared.c delete mode 100644 libpthread/nptl/pthread_self.c delete mode 100644 libpthread/nptl/pthread_setcancelstate.c delete mode 100644 libpthread/nptl/pthread_setcanceltype.c delete mode 100644 libpthread/nptl/pthread_setconcurrency.c delete mode 100644 libpthread/nptl/pthread_setegid.c delete mode 100644 libpthread/nptl/pthread_seteuid.c delete mode 100644 libpthread/nptl/pthread_setgid.c delete mode 100644 libpthread/nptl/pthread_setregid.c delete mode 100644 libpthread/nptl/pthread_setresgid.c delete mode 100644 libpthread/nptl/pthread_setresuid.c delete mode 100644 libpthread/nptl/pthread_setreuid.c delete mode 100644 libpthread/nptl/pthread_setschedparam.c delete mode 100644 libpthread/nptl/pthread_setschedprio.c delete mode 100644 libpthread/nptl/pthread_setspecific.c delete mode 100644 libpthread/nptl/pthread_setuid.c delete mode 100644 libpthread/nptl/pthread_testcancel.c delete mode 100644 libpthread/nptl/pthread_timedjoin.c delete mode 100644 libpthread/nptl/pthread_tryjoin.c delete mode 100644 libpthread/nptl/res.c delete mode 100644 libpthread/nptl/sem_close.c delete mode 100644 libpthread/nptl/sem_destroy.c delete mode 100644 libpthread/nptl/sem_getvalue.c delete mode 100644 libpthread/nptl/sem_init.c delete mode 100644 libpthread/nptl/sem_open.c delete mode 100644 libpthread/nptl/sem_unlink.c delete mode 100644 libpthread/nptl/semaphore.h delete mode 100644 libpthread/nptl/semaphoreP.h delete mode 100644 libpthread/nptl/sysdeps/alpha/Makefile delete mode 100644 libpthread/nptl/sysdeps/alpha/elf/pt-initfini.c delete mode 100644 libpthread/nptl/sysdeps/alpha/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/alpha/pthread_spin_lock.S delete mode 100644 libpthread/nptl/sysdeps/alpha/pthread_spin_trylock.S delete mode 100644 libpthread/nptl/sysdeps/alpha/pthreaddef.h delete mode 100644 libpthread/nptl/sysdeps/alpha/tcb-offsets.sym delete mode 100644 libpthread/nptl/sysdeps/alpha/tls.h delete mode 100644 libpthread/nptl/sysdeps/i386/Makefile delete mode 100644 libpthread/nptl/sysdeps/i386/i486/pthread_spin_trylock.S delete mode 100644 libpthread/nptl/sysdeps/i386/i586/pthread_spin_trylock.S delete mode 100644 libpthread/nptl/sysdeps/i386/i686/Makefile delete mode 100644 libpthread/nptl/sysdeps/i386/i686/pthread_spin_trylock.S delete mode 100644 libpthread/nptl/sysdeps/i386/i686/tls.h delete mode 100644 libpthread/nptl/sysdeps/i386/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/i386/pthread_spin_init.c delete mode 100644 libpthread/nptl/sysdeps/i386/pthread_spin_lock.c delete mode 100644 libpthread/nptl/sysdeps/i386/pthread_spin_unlock.S delete mode 100644 libpthread/nptl/sysdeps/i386/pthreaddef.h delete mode 100644 libpthread/nptl/sysdeps/i386/tcb-offsets.sym delete mode 100644 libpthread/nptl/sysdeps/i386/tls.h delete mode 100644 libpthread/nptl/sysdeps/mips/Makefile delete mode 100644 libpthread/nptl/sysdeps/mips/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/mips/nptl-sysdep.S delete mode 100644 libpthread/nptl/sysdeps/mips/pthread_spin_lock.S delete mode 100644 libpthread/nptl/sysdeps/mips/pthread_spin_trylock.S delete mode 100644 libpthread/nptl/sysdeps/mips/pthreaddef.h delete mode 100644 libpthread/nptl/sysdeps/mips/tcb-offsets.sym delete mode 100644 libpthread/nptl/sysdeps/mips/tls.h delete mode 100644 libpthread/nptl/sysdeps/powerpc/Makefile delete mode 100644 libpthread/nptl/sysdeps/powerpc/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/powerpc/pthread_spin_lock.c delete mode 100644 libpthread/nptl/sysdeps/powerpc/pthread_spin_trylock.c delete mode 100644 libpthread/nptl/sysdeps/powerpc/pthreaddef.h delete mode 100644 libpthread/nptl/sysdeps/powerpc/tcb-offsets.sym delete mode 100644 libpthread/nptl/sysdeps/powerpc/tls.h delete mode 100644 libpthread/nptl/sysdeps/pthread/bits/libc-lock.h delete mode 100644 libpthread/nptl/sysdeps/pthread/bits/sigthread.h delete mode 100644 libpthread/nptl/sysdeps/pthread/bits/stdio-lock.h delete mode 100644 libpthread/nptl/sysdeps/pthread/list.h delete mode 100644 libpthread/nptl/sysdeps/sh/Makefile delete mode 100644 libpthread/nptl/sysdeps/sh/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/sh/pthread_spin_init.c delete mode 100644 libpthread/nptl/sysdeps/sh/pthread_spin_lock.c delete mode 100644 libpthread/nptl/sysdeps/sh/pthread_spin_trylock.S delete mode 100644 libpthread/nptl/sysdeps/sh/pthread_spin_unlock.S delete mode 100644 libpthread/nptl/sysdeps/sh/pthreaddef.h delete mode 100644 libpthread/nptl/sysdeps/sh/tcb-offsets.sym delete mode 100644 libpthread/nptl/sysdeps/sh/tls.h delete mode 100644 libpthread/nptl/sysdeps/sparc/Makefile delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc32/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc32/pthread_spin_lock.c delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc32/pthread_spin_trylock.c delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc32/pthreaddef.h delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc32/sparcv9/pthread_spin_lock.c delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc32/sparcv9/pthread_spin_trylock.c delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc32/sparcv9/pthread_spin_unlock.c delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc64/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc64/pthread_spin_lock.c delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc64/pthread_spin_trylock.c delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc64/pthread_spin_unlock.c delete mode 100644 libpthread/nptl/sysdeps/sparc/sparc64/pthreaddef.h delete mode 100644 libpthread/nptl/sysdeps/sparc/tcb-offsets.sym delete mode 100644 libpthread/nptl/sysdeps/sparc/tls.h delete mode 100644 libpthread/nptl/sysdeps/x86_64/Makefile delete mode 100644 libpthread/nptl/sysdeps/x86_64/jmpbuf-unwind.h delete mode 100644 libpthread/nptl/sysdeps/x86_64/pthread_spin_init.c delete mode 100644 libpthread/nptl/sysdeps/x86_64/pthread_spin_lock.c delete mode 100644 libpthread/nptl/sysdeps/x86_64/pthread_spin_trylock.S delete mode 100644 libpthread/nptl/sysdeps/x86_64/pthread_spin_unlock.S delete mode 100644 libpthread/nptl/sysdeps/x86_64/pthreaddef.h delete mode 100644 libpthread/nptl/sysdeps/x86_64/tcb-offsets.sym delete mode 100644 libpthread/nptl/sysdeps/x86_64/tls.h delete mode 100644 libpthread/nptl/unwind.c delete mode 100644 libpthread/nptl/vars.c delete mode 100644 libpthread/nptl_db/ChangeLog delete mode 100644 libpthread/nptl_db/Makefile delete mode 100644 libpthread/nptl_db/Versions delete mode 100644 libpthread/nptl_db/db_info.c delete mode 100644 libpthread/nptl_db/fetch-value.c delete mode 100644 libpthread/nptl_db/proc_service.h delete mode 100644 libpthread/nptl_db/structs.def delete mode 100644 libpthread/nptl_db/td_init.c delete mode 100644 libpthread/nptl_db/td_log.c delete mode 100644 libpthread/nptl_db/td_symbol_list.c delete mode 100644 libpthread/nptl_db/td_ta_clear_event.c delete mode 100644 libpthread/nptl_db/td_ta_delete.c delete mode 100644 libpthread/nptl_db/td_ta_enable_stats.c delete mode 100644 libpthread/nptl_db/td_ta_event_addr.c delete mode 100644 libpthread/nptl_db/td_ta_event_getmsg.c delete mode 100644 libpthread/nptl_db/td_ta_get_nthreads.c delete mode 100644 libpthread/nptl_db/td_ta_get_ph.c delete mode 100644 libpthread/nptl_db/td_ta_get_stats.c delete mode 100644 libpthread/nptl_db/td_ta_map_id2thr.c delete mode 100644 libpthread/nptl_db/td_ta_map_lwp2thr.c delete mode 100644 libpthread/nptl_db/td_ta_new.c delete mode 100644 libpthread/nptl_db/td_ta_reset_stats.c delete mode 100644 libpthread/nptl_db/td_ta_set_event.c delete mode 100644 libpthread/nptl_db/td_ta_setconcurrency.c delete mode 100644 libpthread/nptl_db/td_ta_thr_iter.c delete mode 100644 libpthread/nptl_db/td_ta_tsd_iter.c delete mode 100644 libpthread/nptl_db/td_thr_clear_event.c delete mode 100644 libpthread/nptl_db/td_thr_dbresume.c delete mode 100644 libpthread/nptl_db/td_thr_dbsuspend.c delete mode 100644 libpthread/nptl_db/td_thr_event_enable.c delete mode 100644 libpthread/nptl_db/td_thr_event_getmsg.c delete mode 100644 libpthread/nptl_db/td_thr_get_info.c delete mode 100644 libpthread/nptl_db/td_thr_getfpregs.c delete mode 100644 libpthread/nptl_db/td_thr_getgregs.c delete mode 100644 libpthread/nptl_db/td_thr_getxregs.c delete mode 100644 libpthread/nptl_db/td_thr_getxregsize.c delete mode 100644 libpthread/nptl_db/td_thr_set_event.c delete mode 100644 libpthread/nptl_db/td_thr_setfpregs.c delete mode 100644 libpthread/nptl_db/td_thr_setgregs.c delete mode 100644 libpthread/nptl_db/td_thr_setprio.c delete mode 100644 libpthread/nptl_db/td_thr_setsigpending.c delete mode 100644 libpthread/nptl_db/td_thr_setxregs.c delete mode 100644 libpthread/nptl_db/td_thr_sigsetmask.c delete mode 100644 libpthread/nptl_db/td_thr_tls_get_addr.c delete mode 100644 libpthread/nptl_db/td_thr_tlsbase.c delete mode 100644 libpthread/nptl_db/td_thr_tsd.c delete mode 100644 libpthread/nptl_db/td_thr_validate.c delete mode 100644 libpthread/nptl_db/thread_db.h delete mode 100644 libpthread/nptl_db/thread_dbP.h (limited to 'libpthread') diff --git a/libpthread/linuxthreads/Makefile b/libpthread/linuxthreads/Makefile index 5752bf98c..50fc20cdf 100644 --- a/libpthread/linuxthreads/Makefile +++ b/libpthread/linuxthreads/Makefile @@ -39,7 +39,10 @@ CFLAGS :=$(CFLAGS:-O0=-O1) # set up system dependencies include dirs (NOTE: order matters!) PTDIR = $(TOPDIR)libpthread/linuxthreads/ -SYSDEPINC = -I$(PTDIR)sysdeps/pthread \ +SYSDEPINC = -I$(PTDIR)sysdeps/unix/sysv/linux \ + -I$(PTDIR)sysdeps/pthread \ + -I$(PTDIR)sysdeps/unix/sysv \ + -I$(PTDIR)sysdeps/unix/unix \ -I$(PTDIR)sysdeps/$(TARGET_ARCH) \ -I$(PTDIR)sysdeps \ -I$(TOPDIR)libc/sysdeps/linux/$(TARGET_ARCH) diff --git a/libpthread/linuxthreads/sysdeps/pthread/bits/pthreadtypes.h b/libpthread/linuxthreads/sysdeps/pthread/bits/pthreadtypes.h index d1daef07a..db4c3790c 100644 --- a/libpthread/linuxthreads/sysdeps/pthread/bits/pthreadtypes.h +++ b/libpthread/linuxthreads/sysdeps/pthread/bits/pthreadtypes.h @@ -25,9 +25,8 @@ /* Fast locks (not abstract because mutexes and conditions aren't abstract). */ struct _pthread_fastlock { - long int __status; /* "Free" or "taken" or head of waiting list */ - int __spinlock; /* Used by compare_and_swap emulation. Also, - adaptive SMP lock stores spin count here. */ + long int __status; /* "Free" or "taken" or head of waiting list */ + int __spinlock; /* For compare-and-swap emulation */ }; #ifndef _PTHREAD_DESCR_DEFINED @@ -38,7 +37,7 @@ typedef struct _pthread_descr_struct *_pthread_descr; /* Attributes for threads. */ -typedef struct __pthread_attr_s +typedef struct { int __detachstate; int __schedpolicy; @@ -53,20 +52,10 @@ typedef struct __pthread_attr_s /* Conditions (not abstract because of PTHREAD_COND_INITIALIZER */ - -#ifdef __GLIBC_HAVE_LONG_LONG -__extension__ typedef long long __pthread_cond_align_t; -#else -typedef long __pthread_cond_align_t; -#endif - typedef struct { struct _pthread_fastlock __c_lock; /* Protect against concurrent access */ _pthread_descr __c_waiting; /* Threads waiting on this condition */ - char __padding[48 - sizeof (struct _pthread_fastlock) - - sizeof (_pthread_descr) - sizeof (__pthread_cond_align_t)]; - __pthread_cond_align_t __align; } pthread_cond_t; @@ -104,7 +93,7 @@ typedef struct typedef int pthread_once_t; -#if defined __USE_UNIX98 || defined __USE_XOPEN2K +#ifdef __USE_UNIX98 /* Read-write locks. */ typedef struct _pthread_rwlock_t { @@ -126,25 +115,6 @@ typedef struct } pthread_rwlockattr_t; #endif -#ifdef __USE_XOPEN2K -/* POSIX spinlock data type. */ -typedef volatile int pthread_spinlock_t; - -/* POSIX barrier. */ -typedef struct { - struct _pthread_fastlock __ba_lock; /* Lock to guarantee mutual exclusion */ - int __ba_required; /* Threads needed for completion */ - int __ba_present; /* Threads waiting */ - _pthread_descr __ba_waiting; /* Queue of waiting threads */ -} pthread_barrier_t; - -/* barrier attribute */ -typedef struct { - int __pshared; -} pthread_barrierattr_t; - -#endif - /* Thread identifiers */ typedef unsigned long int pthread_t; diff --git a/libpthread/nptl/ANNOUNCE b/libpthread/nptl/ANNOUNCE deleted file mode 100644 index b63c657b8..000000000 --- a/libpthread/nptl/ANNOUNCE +++ /dev/null @@ -1,92 +0,0 @@ -Now that the Linux kernel is once again able to run all the tests we -have and since glibc 2.3 was released it was time for a new code drop. -I've uploaded the second code drop for the Native POSIX Thread -Library: - - ftp://people.redhat.com/drepper/nptl/nptl-0.2.tar.bz2 - -You need - -- the latest of Linus' kernel from BitKeeper (or 2.5.41 when it - is released); - -- glibc 2.3 - -- the very latest in tools such as - - + gcc either from the current development branch or the gcc 3.2 - from Red Hat Linux 8; - - + binutils preferrably from CVS, from H.J. Lu's latest release for - Linux, or from RHL 8. - - -Compiling glibc should proceed smoothly. But there are a number of -tests which fail, mostly because some functionality is missing in -glibc. Ignore those errors. It is only important that all tests in -nptl/ are passing. Run - - make subdirs=nptl check - -to run all thread tests. - - -This version features several improvements: - -- all APIs are now implemented; - -- fork handling has been improved; stacks in the child are freed; - atfork handlers are removed if they were registered from a module - which gets unloaded. - -- pthread_tryjoin_np and pthread_timedjoin_np are implemented - -- TSD handling corrected and optimized. - -- many more tests which also test the underlying kernel implementation. - -- the build infrastructure has been implemented so that the DSO and - archives are built in usable form and with correct named. - -- libthread_db has been implemented. This is the library which is - needed by all program which need to get access to internals of - libpthread (mainly debuggers). - -- the CPU clock functions are implemented - - - -The white paper hasn't yet been updated. It's still available at - - http://people.redhat.com/drepper/nptl-design.pdf - - -This release should be ready for some serious testing. I know it is -hard to compile which I why I'm looking into providing binary RPMs. -They can be used on non-critical systems. I'll only be able to -provide binaries for RHL8 based systems, though, and the kernel still -must be installed separately. - - -The next steps will include: - -- write more tests and fix the bugs which are discovered this way - -- update the white paper - -- write and run more performance tests - -- port to IA-64 - - -Interested parties are once again invited to join the mailing we -created: - - - phil-list@redhat.com - -Go to - - https://listman.redhat.com/mailman/listinfo/phil-list - -to subscribe, unsubscribe, or review the archive. diff --git a/libpthread/nptl/Banner b/libpthread/nptl/Banner deleted file mode 100644 index 7c1487e7b..000000000 --- a/libpthread/nptl/Banner +++ /dev/null @@ -1 +0,0 @@ -Native POSIX Threads Library by Ulrich Drepper et al diff --git a/libpthread/nptl/ChangeLog b/libpthread/nptl/ChangeLog deleted file mode 100644 index 6fb56a93f..000000000 --- a/libpthread/nptl/ChangeLog +++ /dev/null @@ -1,7160 +0,0 @@ -2005-05-03 Ulrich Drepper - - [BZ #915] - * sysdeps/pthread/pthread.h: Avoid empty initializers. - -2005-05-03 Jakub Jelinek - - * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Remove explicit - .eh_frame section, use cfi_* directives. - -2005-04-27 Jakub Jelinek - - * sysdeps/unix/sysv/linux/pthread_getcpuclockid.c: Use <> instead - of "" includes. - -2005-04-27 Ulrich Drepper - - * tst-cancel17.c (do_test): Add arbitrary factor to make sure - aio_write blocks. - -2005-04-27 Roland McGrath - - * Makefile (tests): Remove tst-clock2. - - * sysdeps/unix/sysv/linux/timer_create.c (timer_create): Handle - CLOCK_PROCESS_CPUTIME_ID and CLOCK_PROCESS_THREAD_ID specially, - translating to the kernel clockid_t for our own process/thread clock. - - * sysdeps/unix/sysv/linux/pthread_getcpuclockid.c: New file. - -2005-04-15 Jakub Jelinek - - * old_pthread_cond_init.c: Include . - (__pthread_cond_init_2_0): Fail with EINVAL if COND_ATTR is - process shared or uses clock other than CLOCK_REALTIME. - * pthread_cond_init.c (__pthread_cond_init): Remove bogus comment. - -2005-04-13 David S. Miller - - * sysdeps/sparc/sparc64/jmpbuf-unwind.h: New file. - * sysdeps/sparc/sparc64/clone.S: New file. - -2005-04-05 Jakub Jelinek - - * sysdeps/pthread/pthread.h (__pthread_cleanup_routine): Use - __inline instead of inline. - * sysdeps/pthread/bits/libc-lock.h (__libc_cleanup_routine): Likewise. - -2005-03-31 Jakub Jelinek - - * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S: Use - functionally equivalent, but shorter instructions. - * sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h: Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S: - Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_barrier_wait.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_once.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S: - Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise. - * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise. - -2005-03-28 Daniel Jacobowitz - - * sysdeps/mips/Makefile: New file. - * sysdeps/mips/nptl-sysdep.S: New file. - * sysdeps/mips/tcb-offsets.sym: New file. - * sysdeps/mips/pthread_spin_lock.S: New file. - * sysdeps/mips/pthread_spin_trylock.S: New file. - * sysdeps/mips/pthreaddef.h: New file. - * sysdeps/mips/tls.h: New file. - * sysdeps/mips/jmpbuf-unwind.h: New file. - * sysdeps/unix/sysv/linux/mips/lowlevellock.h: New file. - * sysdeps/unix/sysv/linux/mips/bits/pthreadtypes.h: New file. - * sysdeps/unix/sysv/linux/mips/bits/semaphore.h: New file. - * sysdeps/unix/sysv/linux/mips/pthread_once.c: New file. - * sysdeps/unix/sysv/linux/mips/fork.c: New file. - * sysdeps/unix/sysv/linux/mips/pt-vfork.S: New file. - * sysdeps/unix/sysv/linux/mips/vfork.S: New file. - * sysdeps/unix/sysv/linux/mips/clone.S: New file. - * sysdeps/unix/sysv/linux/mips/createthread.c: New file. - * sysdeps/unix/sysv/linux/mips/sysdep-cancel.h: New file. - -2005-03-23 Ulrich Drepper - - * pthread_create.c (__pthread_create_2_1): Rename syscall error - variable to scerr. - -2005-03-10 Jakub Jelinek - - * tst-getpid1.c (do_test): Align stack passed to clone{2,}. - -2005-02-25 Roland McGrath - - * alloca_cutoff.c: Correct license text. - * tst-unload.c: Likewise. - * sysdeps/pthread/allocalim.h: Likewise. - * sysdeps/pthread/pt-initfini.c: Likewise. - * sysdeps/pthread/bits/libc-lock.h: Likewise. - * sysdeps/pthread/bits/sigthread.h: Likewise. - * sysdeps/unix/sysv/linux/bits/local_lim.h: Likewise. - * sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise. - -2005-02-16 Roland McGrath - - * sysdeps/pthread/pthread-functions.h (struct pthread_functions): - Use unsigned int * for ptr_nthreads. - -2005-02-14 Alan Modra - - * sysdeps/powerpc/tcb-offsets.sym (thread_offsetof): Redefine to suit - gcc4. - -2005-02-07 Richard Henderson - - [BZ #787] - * sysdeps/pthread/pthread.h (__sigsetjmp): Use pointer as first - argument. - -2004-11-03 Marcus Brinkmann - - * sysdeps/generic/lowlevellock.h (__generic_mutex_unlock): Fix - order of arguments in invocation of atomic_add_zero. - -2005-01-26 Jakub Jelinek - - [BZ #737] - * sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S (__new_sem_trywait): - Use direct %gs segment access or, if NO_TLS_DIRECT_SEG_REFS, - at least gotntpoff relocation and addition. - * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait): - Likewise. - * sysdeps/unix/sysv/linux/i386/i486/sem_post.S (__new_sem_post): - Likewise. - * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S (__new_sem_wait): - Likewise. - -2005-01-06 Ulrich Drepper - - * allocatestack.c (init_one_static_tls): Adjust initialization of DTV - entry for static tls deallocation fix. - * sysdeps/alpha/tls.h (dtv_t): Change pointer type to be struct which - also contains information whether the memory pointed to is static - TLS or not. - * sysdeps/i386/tls.h: Likewise. - * sysdeps/ia64/tls.h: Likewise. - * sysdeps/powerpc/tls.h: Likewise. - * sysdeps/s390/tls.h: Likewise. - * sysdeps/sh/tls.h: Likewise. - * sysdeps/sparc/tls.h: Likewise. - * sysdeps/x86_64/tls.h: Likewise. - -2004-12-27 Ulrich Drepper - - * init.c (__pthread_initialize_minimal_internal): Use __sigemptyset. - -2004-12-21 Jakub Jelinek - - * sysdeps/i386/tls.h (CALL_THREAD_FCT): Maintain 16 byte alignment of - %esp. - * Makefile (tests): Add tst-align2. - * tst-align2.c: New test. - * sysdeps/i386/Makefile (CFLAGS-tst-align{,2}.c): Add - -mpreferred-stack-boundary=4. - -2004-12-18 Roland McGrath - - * sysdeps/unix/sysv/linux/powerpc/powerpc64/bits/local_lim.h: - New file removed withdrawn for the moment. - -2004-12-17 Richard Henderson - - * sysdeps/unix/sysv/linux/alpha/clone.S: New file. - * sysdeps/alpha/tcb-offsets.sym (TID_OFFSET): New. - -2004-12-16 Ulrich Drepper - - * sysdeps/unix/sysv/linux/powerpc/powerpc64/bits/local_lim.h: New file. - Increased PTHREAD_STACK_MIN. - - * tst-context1.c (stacks): Use bigger stack size. - -2004-12-16 Jakub Jelinek - - * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S: New file. - * sysdeps/sparc/tcb-offsets.sym: Add TID. - -2004-12-15 Jakub Jelinek - - * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: New file. - * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: New file. - * sysdeps/s390/tcb-offsets.sym (TID): Add. - -2004-12-15 Ulrich Drepper - - * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: New file. - -2004-12-14 Ulrich Drepper - - * sysdeps/powerpc/tcb-offsets.sym: Add TID. - * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: New file. - - * tst-getpid1.c: If child crashes, report this first. Print which - signal. - -2004-12-09 Ulrich Drepper - - * init.c (__pthread_initialize_minimal_internal): Also unblock - SIGSETXID. - -2004-12-01 Jakub Jelinek - - * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_CPUTIME, - _POSIX_THREAD_CPUTIME): Define to 0. - * sysdeps/pthread/timer_create.c (timer_create): Remove unused code - handling CLOCK_PROCESS_CPUTIME_ID and CLOCK_THREAD_CPUTIME_ID. - * sysdeps/pthread/timer_routines.c (__timer_signal_thread_pclk, - __timer_signal_thread_tclk): Remove. - (init_module): Remove their initialization. - (thread_cleanup): Remove their cleanup assertions. - * sysdeps/pthread/posix-timer.h (__timer_signal_thread_pclk, - __timer_signal_thread_tclk): Remove. - * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Removed. - * sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Removed. - * sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h: Removed. - -2004-12-07 Jakub Jelinek - - * sysdeps/ia64/tcb-offsets.sym (TID): Add. - * sysdeps/unix/sysv/linux/ia64/clone2.S: New file. - - * Makefile (tests): Add tst-getpid2. - * tst-getpid1.c (TEST_CLONE_FLAGS): Define. - (do_test): Use it. Use __clone2 instead of clone on ia64. - * tst-getpid2.c: New test. - -2004-12-07 Kaz Kojima - - * sysdeps/unix/sysv/linux/sh/clone.S: New file. - -2004-12-04 Ulrich Drepper - - * Makefile (tests): Add tst-getpid1. - * tst-getpid1.c: New file. - * sysdeps/unix/sysv/linux/i386/clone.S: New file. - * sysdeps/unix/sysv/linux/x86_64/clone.S: New file. - -2004-12-02 Roland McGrath - - * Makefile (libpthread-nonshared): Variable removed. - ($(objpfx)libpthread_nonshared.a): Target removed. - ($(inst_libdir)/libpthread_nonshared.a): Likewise. - These are now handled by generic magic from - libpthread-static-only-routines being set. - -2004-11-27 Ulrich Drepper - - * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_PRIORITIZED_IO, - _POSIX2_CHAR_TERM, _POSIX_THREAD_PRIO_INHERIT, - _POSIX_THREAD_PRIO_PROTECT): Define. - * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise. - * sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise. - * sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h: Likewise. - -2004-11-26 Jakub Jelinek - - * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_ADVISORY_INFO, - _POSIX_SPORADIC_SERVER, _POSIX_THREAD_SPORADIC_SERVER, _POSIX_TRACE, - _POSIX_TRACE_EVENT_FILTER, _POSIX_TRACE_INHERIT, _POSIX_TRACE_LOG, - _POSIX_TYPED_MEMORY_OBJECTS, _POSIX_IPV6, _POSIX_RAW_SOCKETS): Define. - * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise. - * sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise. - * sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h: Likewise. - -2004-11-24 Ulrich Drepper - - * sysdeps/x86_64/Makefile [nptl]: Define CFLAGS-pthread_create.c. - - * Makefile (libpthread-routines): Add pthread_setschedprio. - * Versions [libpthread, GLIBC_2.3.4]: Add pthread_setschedprio. - * sysdeps/pthread/pthread.h: Declare pthread_setschedprio. - * pthread_setschedprio.c: New file. - -2004-11-20 Jakub Jelinek - - * pthread_create.c (pthread_cancel): Add PTHREAD_STATIC_FN_REQUIRE. - * pthread_cancel.c (pthread_create): Likewise. - - * Makefile (libpthread-routines): Add vars. - * sysdeps/pthread/createthread.c (__pthread_multiple_threads): Remove. - * init.c (__default_stacksize, __is_smp): Remove. - * vars.c: New file. - * pthreadP.h (__find_thread_by_id): If !SHARED, add weak_function - and define a wrapper macro. - (PTHREAD_STATIC_FN_REQUIRE): Define. - * allocatestack.c (__find_thread_by_id): Undefine. - * pthread_create (__pthread_keys): Remove. - (pthread_mutex_lock, pthread_mutex_unlock, pthread_once, - pthread_key_create, pthread_setspecific, pthread_getspecific): Add - PTHREAD_STATIC_FN_REQUIRE. - -2004-11-18 Kaz Kojima - - * sysdeps/sh/tls.h (DB_THREAD_SELF): Set the correct bias - parameter to REGISTER macro. - -2004-11-17 Roland McGrath - - * sysdeps/unix/sysv/linux/timer_routines.c (__start_helper_thread): - Make sure SIGCANCEL is blocked as well. - -2004-11-10 Jakub Jelinek - - * sysdeps/pthread/setxid.h: New file. - * sysdeps/pthread/pthread-functions.h (HAVE_PTR__NPTL_SETXID): Remove. - (struct xid_command): Add forward decl. - (struct pthread_functions): Change return type of __nptl_setxid hook - to int. - * pthreadP.h (__nptl_setxid): Change return type to int. - * allocatestack.c (__nptl_setxid): Call INTERNAL_SYSCALL_NCS in the - calling thread, return its return value and set errno on failure. - * descr.h (struct xid_command): Change id type to long array. - - * Makefile: Add rules to build and test tst-setuid1 and - tst-setuid1-static. - * tst-setuid1.c: New test. - * tst-setuid1-static.c: New test. - -2004-11-10 Jakub Jelinek - - * Makefile (tests): Add tst-exit3. - * tst-exit3.c: New test. - -2004-11-09 Ulrich Drepper - - * Makefile (tests): Add tst-exit2. - * tst-exit2.c: New file. - -2004-11-09 Roland McGrath - - [BZ #530] - * sysdeps/pthread/createthread.c (do_clone): Increment __nptl_nthreads - here, before calling clone. - * pthread_create.c (start_thread): Don't do it here. - -2004-11-02 Jakub Jelinek - - * sysdeps/unix/sysv/linux/smp.h: Include . - -2004-10-29 Kaz Kojima - - * sysdeps/unix/sysv/linux/sh/sem_timedwait.S (sem_timedwait): - Set ETIMEDOUT to errno when time is up. Tweak to avoid - assembler warning. - -2004-10-28 Jakub Jelinek - - * pthread_create.c (__pthread_create_2_1): Avoid leaking stacks - if sched_priority is not between minprio and maxprio. - -2004-10-25 Kaz Kojima - - * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S - (__pthread_cond_timedwait): Use clock_gettime syscall if exists. - - * sysdeps/unix/sysv/linux/sh/lowlevellock.S - (__lll_mutex_timedlock_wait): Fix a bad branch condition. - -2004-10-24 Ulrich Drepper - - * sysdeps/unix/sysv/linux/smp.h (is_smp_system): Use - not-cancelable I/O functions. - -2004-10-21 Kaz Kojima - - * sysdeps/unix/sysv/linux/sh/lowlevellock.S - (__lll_mutex_timedlock_wait): If woken but cannot get the lock, - make sure 2 is stored in the futex and we looked at the old value. - Fix a few other problems to return the correct value. - -2004-10-14 Richard Henderson - - * sysdeps/alpha/tcb-offsets.sym (thread_offsetof): Redefine to - make gcc4 happy. - -2004-10-06 Jakub Jelinek - - * sysdeps/unix/sysv/linux/jmp-unwind.c: Include pthreadP.h instead - of pthread-functions.h and pthreaddef.h. - * sysdeps/unix/sysv/linux/s390/jmp-unwind.c: Likewise. - - * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h (pthread_cond_t): - Change __data.__nwaiters from int to unsigned int. - - * tst-clock2.c (do_test): Don't fail if _POSIX_THREAD_CPUTIME == 0 and - sysconf (_SC_THREAD_CPUTIME) returns negative value. - - * allocatestack.c (__find_thread_by_id): Move attribute_hidden - before return type. - - * sysdeps/s390/jmpbuf-unwind.h: Include bits/wordsize.h. - (JMPBUF_CFA_UNWINDS_ADJ): Subtract 96 resp. 160 bytes from CFA. - -2004-10-06 Ulrich Drepper - - * tst-cancel4.c (tf_msgrcv): Check for failure in msgget. If the - test fails, remove message queue. - (tf_msgsnd): Likewise. - -2004-10-05 Jakub Jelinek - - * tst-clock1.c: Change #ifdef to #if defined. - * tst-clock2.c: Likewise. - * tst-cond11.c: Likewise. - - * sysdeps/pthread/timer_create.c (timer_create): Use - defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0 instead of - defined CLOCK_PROCESS_CPUTIME_ID #ifs and similarly for - THREAD_CPUTIME. - -2004-10-05 Jakub Jelinek - - * sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h (_POSIX_CPUTIME, - _POSIX_THREAD_CPUTIME): Define to 0. - -2004-10-04 Ulrich Drepper - - * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Define _POSIX_CPUTIME - and _POSIX_THREAD_CPUTIME to zero. - * sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise. - * tst-barrier2.c: Fix testing for POSIX feature. - * tst-clock1.c: Likewise. - * tst-clock2.c: Likewise. - * tst-cond11.c: Likewise. - * tst-cond4.c: Likewise. - * tst-cond6.c: Likewise. - * tst-flock2.c: Likewise. - * tst-mutex4.c: Likewise. - * tst-mutex9.c: Likewise. - * tst-rwlock12.c: Likewise. - * tst-rwlock4.c: Likewise. - * tst-signal1.c: Likewise. - * tst-spin2.c: Likewise. - * sysdeps/pthread/posix-timer.h: Likewise. - * sysdeps/pthread/timer_create.c: Likewise. - * sysdeps/pthread/timer_routines.c: Likewise. - -2004-10-01 Ulrich Drepper - - * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S - (__lll_mutex_timedlock_wait): Address futex correctly. - - * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S - (__lll_mutex_timedlock_wait): If woken but cannot get the lock, - make sure 2 is stored in the futex and we looked at the old value. - * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S - (__lll_mutex_timedlock_wait): Likewise. Fix a few other problems - which might very well made the code not working at all before. - [BZ #417] - -2004-09-28 Ulrich Drepper - - * sysdeps/unix/sysv/linux/pthread_kill.c (__pthread_kill): Don't - allow SIGSETXID to be sent. - * sysdeps/pthread/sigaction.c (__sigaction): Don't allow action - for SIGSETXID to be defined. - * sysdeps/pthread/pthread_sigmask.c (pthread_sigmask): Make sure - SIGSETXID cannot be blocked. - - * sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h (pthread_cond_t): - Add __extension__ to long long types. - * sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise. - -2004-09-25 Ulrich Drepper - - * descr.h (struct pthread): Add stopped_start field. - * sysdeps/pthread/createthread.c (create_thread): Set - start_stopped flag in descriptor for new thread appropriately. - * pthread_create.c (start_thread): Only take lock to be stopped on - startup if stopped_start flag says so. - -2004-09-24 Ulrich Drepper - - * pthread_create.c (__pthread_create_2_1): Remember whether thread - is created detached and if yes, do not try to free the stack in case - the thread creation failed. - * sysdeps/pthread/createthread.c (do_clone): Free stack here if clone - call fails. Don't depend on INTERNAL_SYSCALL_ERRNO return zero in - case there has been no error. [BZ #405] - - * pthread_create.c (start_thread): Don't wait for scheduler data - etc to be set at the beginning of the function. The cancellation - infrastructure must have been set up. And enable async - cancellation before potentially going to sleep. [BZ #401] - -2004-09-20 Ulrich Drepper - - * Versions: Remove exports for pthread_set*id_np functions. - * sysdeps/pthread/pthread.h: Remove pthread_set*id_np prototypes - for now. - * Makefile: Don't build pthread_set*id code for now. - -2004-09-19 Ulrich Drepper - - * sysdeps/unix/sysv/linux/allocrtsig.c: Allocate second signal for - internal use. - * allocatestack.c (__nptl_setxid): New function. - * descr.h (struct xid_command): Define type. - * init.c (pthread_functions): Add ptr__nptl_setxid initialization. - (sighandler_setxid): New function. - (__pthread_initialize_minimal): Register sighandler_setxid for - SIGCANCEL. - * pt-allocrtsig.c: Update comment. - * pthreadP.h: Define SIGSETXID. Declare __xidcmd variable. - Declare __nptl_setxid. - * sysdeps/pthread/pthread-functions.h: Add ptr__nptl_setxid. - * sysdeps/pthread/pthread.h: Declare pthread_setgid_np, - pthread_setuid_np, pthread_setegid_np, pthread_seteuid_np, - pthread_setregid_np, pthread_setreuid_np, pthread_setresgid_np, - and pthread_setresuid_np. - * pthread_setgid_np.c: New file. - * pthread_setuid_np.c: New file. - * pthread_setegid_np.c: New file. - * pthread_seteuid_np.c: New file. - * pthread_setregid_np.c: New file. - * pthread_setreuid_np.c: New file. - * pthread_setresgid_np.c: New file. - * pthread_setresuid_np.c: New file. - * Versions [libpthread, GLIBC_2.3.4]: Add pthread_setgid_np, - pthread_setuid_np, pthread_setegid_np, pthread_seteuid_np, - pthread_setregid_np, pthread_setreuid_np, pthread_setresgid_np, - and pthread_setresuid_np. - * Makefile (libpthread-routines): Add pthread_setuid, pthread_seteuid, - pthread_setreuid, pthread_setresuid, pthread_setgid, pthread_setegid, - pthread_setregid, and pthread_setresgid. - -2004-09-18 Ulrich Drepper - - * allocatestack.c (allocate_stack): Return EAGAIN instead of - ENOMEM when out of memory. - -2004-09-10 Roland McGrath - - [BZ #379] - * allocatestack.c (allocate_stack): Remove [__ASSUME_CLONE_STOPPED] - code, since we don't try to use the broken CLONE_STOPPED any more. - * pthread_create.c (start_thread): Likewise. - -2004-09-15 Richard Henderson - - * sysdeps/unix/sysv/linux/alpha/vfork.S: Use libc_hidden_def. - -2004-09-01 David Mosberger - - * sysdeps/unix/sysv/linux/ia64/jmpbuf-unwind.h - (__libc_unwind_longjmp): Delete macro and declare as function. - * sysdeps/unix/sysv/linux/ia64/Makefile (sysdep_routines): Mention - __ia64_longjmp, sigstack_longjmp, and __sigstack_longjmp for - nptl directory. - * sysdeps/unix/sysv/linux/ia64/__ia64_longjmp.S: New file. - * sysdeps/unix/sysv/linux/ia64/__sigstack_longjmp.c: New file. - * sysdeps/unix/sysv/linux/ia64/unwind_longjmp.c: New file. - -2004-09-12 Ulrich Drepper - - * sysdeps/pthread/pthread.h: Make rwlock prototypes available also - for __USE_XOPEN2K. - * sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h: Define rwlock - types also for __USE_XOPEN2K. - * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h: Likewise. - * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise. - [BZ #320] - -2004-09-08 Ulrich Drepper - - * sysdeps/pthread/pthread.h - (PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP): Make safe for C++. - (PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP): Likewise. - (PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP): Likewise. - (PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP): Likewise. - [BZ #375] - -2004-09-07 Ulrich Drepper - - * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h: Allow - PSEUDO to be used with . prefix. - - * sysdeps/unix/sysv/linux/alpha/pthread_once.c (__pthread_once): - Use atomic_increment instead of atomic_exchange_and_add. - * sysdeps/unix/sysv/linux/sparc/pthread_once.c (__pthread_once): - Likewise. - * sysdeps/unix/sysv/linux/ia64/pthread_once.c (__pthread_once): - Likewise. - * sysdeps/unix/sysv/linux/powerpc/pthread_once.c (__pthread_once): - Likewise. - - * allocatestack.c (allocate_stack): Use atomic_increment_val - instead of atomic_exchange_and_add. - * sysdeps/unix/sysv/linux/sem_post.c (__new_sem_post): Likewise. - * sysdeps/unix/sysv/linux/powerpc/sem_post.c (__new_sem_post): - Likewise. - * sysdeps/pthread/pthread_barrier_wait.c (pthread_barrier_wait): - Likewise. - - * sysdeps/pthread/pthread.h (pthread_once): Remove __THROW since - the initialization function might throw. - -2005-09-05 Richard Henderson - - * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h (SINGLE_THREAD_P): - Move definition inside libpthread, libc, librt check. Provide - definition for rtld. - -2004-09-02 Ulrich Drepper - - * sysdeps/alpha/jmpbuf-unwind.h: Define __libc_unwind_longjmp. - * sysdeps/i386/jmpbuf-unwind.h: Likewise - * sysdeps/powerpc/jmpbuf-unwind.h: Likewise. - * sysdeps/s390/jmpbuf-unwind.h: Likewise. - * sysdeps/sh/jmpbuf-unwind.h: Likewise. - * sysdeps/sparc/sparc32/jmpbuf-unwind.h: Likewise. - * sysdeps/unix/sysv/linux/ia64/jmpbuf-unwind.h: Likewise. - * sysdeps/x86_64/jmpbuf-unwind.h: Likewise. - * unwind.c: Use it. - - * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_cond_t): - Rename __data.__clock to __data.__nwaiters, make it unsigned int. - * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h (pthread_cond_t): - Likewise. - * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: - Decrement __nwaiters. If pthread_cond_destroy has been called and - this is the last waiter, signal pthread_cond_destroy caller and - avoid using the pthread_cond_t structure after unlock. - * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise. - * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise. - Read clock type from the least significant bits of __nwaiters instead - of __clock. - * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise. - * sysdeps/unix/sysv/linux/internaltypes.h: Define COND_CLOCK_BITS. - -2004-08-31 Jakub Jelinek - - [BZ #342] - * Makefile (tests): Add tst-cond20 and tst-cond21. - * tst-cond20.c: New test. - * tst-cond21.c: New test. - * sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h - (pthread_cond_t): Rename __data.__clock to __data.__nwaiters, make - it unsigned int. - * sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h (pthread_cond_t): - Likewise. - * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h - (pthread_cond_t): Likewise. - * sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h (pthread_cond_t): - Likewise. - * sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h (pthread_cond_t): - Likewise. - * sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h (pthread_cond_t): - Likewise. - * sysdeps/unix/sysv/linux/lowlevelcond.sym (cond_clock): Remove. - (cond_nwaiters): New. - (clock_bits): New. - * pthread_cond_destroy.c (__pthread_cond_destroy): Return EBUSY - if there are waiters not signalled yet. - Wait until all already signalled waiters wake up. - * sysdeps/pthread/pthread_cond_wait.c (__condvar_cleanup): Decrement - __nwaiters. If pthread_cond_destroy has been called and this is the - last waiter, signal pthread_cond_destroy caller and avoid using - the pthread_cond_t structure after unlock. - (__pthread_cond_wait): Increment __nwaiters in the beginning, - decrement it when leaving. If pthread_cond_destroy has been called - and this is the last waiter, signal pthread_cond_destroy caller. - * sysdeps/pthread/pthread_cond_timedwait.c (__pthread_cond_timedwait): - Likewise. Read clock type from the least significant bits of - __nwaiters instead of __clock. - * pthread_condattr_setclock.c (pthread_condattr_setclock): Check - whether clock ID can be encoded in COND_CLOCK_BITS bits. - * pthread_condattr_getclock.c (pthread_condattr_getclock): Decode - clock type just from the last COND_CLOCK_BITS bits of value. - * pthread_cond_init.c (__pthread_cond_init): Initialize __nwaiters - instead of __clock, just from second bit of condattr's value. - -2004-08-30 Jakub Jelinek - - * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Include - bits/wordsize.h. Make the header match i386 header when __WORDSIZE - != 64. - * sysdeps/unix/sysv/linux/x86_64/bits/semaphore.h: Likewise. - -2004-08-15 Roland McGrath - - * pthread_atfork.c: Update copyright terms including special exception - for these trivial files, which are statically linked into executables - that use dynamic linking for the significant library code. - -2004-08-09 Jakub Jelinek - - * DESIGN-rwlock.txt