about summary refs log tree commit diff
path: root/nptl/sysdeps/unix/sysv/linux/x86_64
Commit message (Collapse)AuthorAgeFilesLines
* [BZ #357]Ulrich Drepper2004-09-023-10/+67
| | | | | | | | | | | | | | Update. 2004-09-02 Steven Munroe <sjmunroe@us.ibm.com> [BZ #357] * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber. (main): Call test_stack. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S (__getcontext): Push stack frame then save parms in local frame. Improve instruction scheduling. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S (__swapcontext): Likewise.
* Include bits/wordsize.h. Make the header match i386 header when __WORDSIZE ↵Ulrich Drepper2004-08-302-11/+51
| | | | != 64.
* Update.Ulrich Drepper2004-07-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-07-05 Ulrich Drepper <drepper@redhat.com> * elf/dl-init.c: Don't define and use _dl_starting_up if HAVE_INLINED_SYSCALLS is defined and the variable is not used. * elf/dl-support.c: Likewise. * elf/rtld.c: Likewise. * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly if HAVE_INLINED_SYSCALLS is defined. * sysdeps/powerpc/powerpc64/dl-machine.h: Don't rest _dl_starting_up here. * sysdeps/powerpc/powerpc32/dl-start.S: Likewise. * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS. * config.h.in: Add entry for HAVE_INLINED_SYSCALLS. * sysdeps/posix/profil.c: If compiled for ld.so, omit code which is needed to stop profiling. * elf/dl-open.c (dl_open_worker): If a newly opened object is to be profile make sure it cannot be unloaded. * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall. * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation support, make sure the helper function is inlined. * sysdeps/unix/sysv/linux/pread.c: Likewise. * sysdeps/unix/sysv/linux/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
* Update.Ulrich Drepper2004-07-051-1/+1
| | | | | | | | | | | | | | | | | | | * include/string.h (ffs): Add libc_hidden_builtin_proto. * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def. * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise. * sysdeps/alpha/ffs.S (ffs): Likewise. * sysdeps/s390/ffs.c (ffs): Likewise. * sysdeps/powerpc/ffs.c (ffs): Likewise. * sysdeps/i386/ffs.c (ffs): Likewise. * sysdeps/i386/i686/ffs.c (ffs): Likewise. * sysdeps/m68k/ffs.c (ffs): Likewise. * sysdeps/generic/ffs.c (ffs): Likewise. * sysdeps/m88k/ffs.c (ffs): Likewise. * sysdeps/am29k/ffs.c (ffs): Likewise. * sysdeps/i960/ffs.c (ffs): Likewise. * sysdeps/x86_64/ffs.c (ffs): Likewise. * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
* Update.Ulrich Drepper2004-07-041-2/+2
| | | | | | | 2004-07-04 Matthew Reppert <arashi@kai.vm.bytemark.co.uk> * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver instead of libc_hidden_def.
* Fix assembler in last patch.Andreas Jaeger2004-06-191-1/+1
|
* Update.Ulrich Drepper2004-06-181-0/+5
| | | | | | | | | | | | | 2004-06-17 Ulrich Drepper <drepper@redhat.com> * sysdeps/pthread/pthread_cond_timedwait.c (__pthread_cond_timedwait): Also check for negativ nanoseconds. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S (__pthread_cond_timedwait): Check for invalid nanosecond in timeout value. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise. * tst-cond19.c: New file. * Makefile: Add rules to build and run tst-cond19.
* Update.Ulrich Drepper2004-06-035-43/+53
| | | | | | 2004-06-03 Ulrich Drepper <drepper@redhat.com> * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
* [BZ #163]Ulrich Drepper2004-05-184-22/+55
| | | | | | | | | | Update. 2004-05-18 Petter Reinholdtsen <pere@hungry.com> * locales/sl_SI [LC_TIME]: Correct d_fmt date format from '22.06.2003' to '22. 06. 2003'. Change requested from Aleks Reinhardt, and approved by the locale author Borka Jerman-Blazic. [BZ #163]
* Update.Ulrich Drepper2004-04-191-1/+1
| | | | | | | | | * sysdeps/unix/sysv/linux/powerpc/rt-sysdep.c: New file. * sysdeps/unix/sysv/linux/powerpc/Makefile (librt-routines): Add rt-sysdep. * rt/tst-mqueue5.c (mqsend): Don't inline. (mqrecv): Likewise.
* * sysdeps/unix/sysv/linux/x86_64/bits/semaphore.h Andreas Jaeger2004-04-181-2/+2
| | | | | | | | (SEM_VALUE_MAX): Add missing brace. 2004-04-18 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/x86_64/bits/semaphore.h (SEM_VALUE_MAX): Add missing brace.
* Update.Ulrich Drepper2004-04-171-1/+1
| | | | | | | | | | | 2004-03-26 H.J. Lu <hongjiu.lu@intel.com> * sysdeps/unix/sysv/linux/wordsize-64/fxstat.c (__fxstat): Don't use "struct kernel_stat". 2004-04-02 H.J. Lu <hongjiu.lu@intel.com> * sysdeps/ia64/memcmp.S: Fix symbol.
* Update.Ulrich Drepper2004-04-131-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-04-08 Ulrich Drepper <drepper@redhat.com> * rt/tst-mqueue3.c: New file. * rt/Makefile (tests): Add tst-mqueue3. 2004-04-08 Jakub Jelinek <jakub@redhat.com> * rt/tst-mqueue1.c: New file. * rt/tst-mqueue2.c: New file. * rt/tst-mqueue4.c: New file. * rt/Makefile (tests): Add tst-mqueue1, tst-mqueue2, tst-mqueue4. * rt/Versions (librt): Add mq_*@@GLIBC_2.3.4. * rt/Makefile (headers): Add mqueue.h and bits/mqueue.h. (mq-routines): Set. (librt-routines): Use it. * rt/mqueue.h: New file. * include/mqueue.h: New file. * sysdeps/generic/bits/mqueue.h: New file. * sysdeps/generic/mq_setattr.c: New file. * sysdeps/generic/mq_getattr.c: New file. * sysdeps/generic/mq_notify.c: New file. * sysdeps/generic/mq_close.c: New file. * sysdeps/generic/mq_send.c: New file. * sysdeps/generic/mq_unlink.c: New file. * sysdeps/generic/mq_receive.c: New file. * sysdeps/generic/mq_timedreceive.c: New file. * sysdeps/generic/mq_timedsend.c: New file. * sysdeps/generic/mq_open.c: New file. * sysdeps/unix/sysv/linux/bits/local_lim.h (MQ_PRIO_MAX): Define. * sysdeps/unix/sysv/linux/bits/mqueue.h: New file. * sysdeps/unix/sysv/linux/syscalls.list: Add mq_timedsend, mq_timedreceive and mq_setattr. * sysdeps/unix/sysv/linux/mq_getattr.c: New file. * sysdeps/unix/sysv/linux/mq_notify.c: New file. * sysdeps/unix/sysv/linux/mq_close.c: New file. * sysdeps/unix/sysv/linux/mq_send.c: New file. * sysdeps/unix/sysv/linux/mq_unlink.c: New file. * sysdeps/unix/sysv/linux/mq_receive.c: New file. * sysdeps/unix/sysv/linux/mq_open.c: New file. 2004-04-09 Thorsten Kukuk <kukuk@suse.de> * sysdeps/s390/ffs.c: Don't add ffsl weak alias on s390x. 2004-04-09 Steven Munroe <sjmunroe@us.ibm.com> * sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: New file.
* Update.Ulrich Drepper2004-03-242-4/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sysdeps/unix/sysv/linux/smp.h: New file. * sysdeps/unix/sysv/linux/sh/smp.h: New file. * init.c: Define __is_smp. (__pthread_initialize_minimal_internal): Call is_smp_system to initialize __is_smp. * pthreadP.h: Declare __is_smp. Define MAX_ADAPTIVE_COUNT is necessary. * pthread_mutex_init.c: Add comment regarding __spins field. * pthread_mutex_lock.c: Implement adaptive mutex type. * pthread_mutex_timedlock.c: Likewise. * sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h (pthread_mutex_t): Add __spins field. * 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/sh/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h: Define lll_mutex_cond_trylock. * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Likewise. Define BUSY_WAIT_NOP. * sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise. * tst-mutex5.c: Add support for testing adaptive mutexes. * tst-mutex7.c: Likewise. * tst-mutex5a.c: New file. * tst-mutex7a.c: New file. * Makefile (tests): Add tst-mutex5a and tst-mutex7a.
* Update.Ulrich Drepper2004-03-241-0/+4
| | | | | | * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S (__lll_mutex_timedlock_wait): Preserve r8 and r9 since the vgettimeofday call miht destroy the content.
* Update.Ulrich Drepper2004-03-102-2/+38
| | | | | | | | 2004-02-09 Jakub Jelinek <jakub@redhat.com> * posix/Makefile (tests): Add tst-vfork2. * posix/tst-vfork1.c (do_test): Fix comment. * posix/tst-vfork2.c: New test.
* Update.Ulrich Drepper2004-03-091-0/+31
| | | | | | * sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and RESTORE_PID are defined, use it. * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
* (__lll_mutex_lock_wait): Optimize a bit more. Just one copy of the atomic ↵Ulrich Drepper2004-03-011-9/+3
| | | | instruction needed.
* Update.Ulrich Drepper2004-02-221-10/+11
| | | | | | | | 2004-02-22 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register content also in case of an overflow in the parameter. Reported by Momchil Velikov <velco@fadata.bg>.
* Update.Ulrich Drepper2004-02-191-6/+34
| | | | | | | | | | | | * sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S (pthread_barrier_wait): After wakeup, release lock only when the last thread stopped using the barrier object. * sysdeps/unix/sysv/linux/x86_64/pthread_barrier_wait.S (pthread_barrier_wait): Likewise. * sysdeps/pthread/pthread_barrier_wait.c (pthread_barrier_wait): Likewise. * Makefile (tests): Add tst-barrier4. * tst-barrier4.c: New file.
* Update.Ulrich Drepper2004-02-191-37/+14
| | | | | | | 2004-02-18 Carlos O'Donell <carlos@baldric.uwo.ca> * test-skeleton.c (main): If set, use environment variable TIMEOUTFACTOR to scale test TIMEOUT.
* Update.Ulrich Drepper2004-02-181-2/+2
| | | | | | | | | 2004-02-18 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S (__pthread_rwlock_unlock): Access WRITER as 32-bit value. * Makefile (tests): Add tst-rwlock13. * tst-rwlock13.c: New test.
* Update.Ulrich Drepper2004-02-131-2/+26
| | | | | | | | | 2004-02-13 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S (__pthread_cond_timedwait): Get internal lock in case timeout has passed before the futex syscall. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise.
* Update.Ulrich Drepper2003-12-111-2/+2
| | | | | | * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_futex_wait): Likewise. (lll_futex_wake): Likewise.
* * config.make.in (fno-unit-at-a-time): Define.Andreas Jaeger2003-12-021-1/+2
| | | | | | | | | | | | | | | | | | * configure.in: Add test for -fno-unit-at-a-time. Fix text for -fpie. * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time). * locale/Makefile (CFLAGS-loadlocale.c): Likewise. For linuxthreads: * Makefile (CFLAGS-pt-initfini.s): Add $(fno_unit_at_a_time). * sysdeps/unix/sysv/linux/x86_64/Makefile (CFLAGS-pt-initfini.s): Likewise. For nptl: * Makefile (CFLAGS-pt-initfini.s): Add $(fno_unit_at_a_time). * sysdeps/unix/sysv/linux/x86_64/Makefile (CFLAGS-pt-initfini.s): Likewise.
* Update.Ulrich Drepper2003-11-213-8/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sysdeps/pthread/pthread_cond_wait.c (__pthread_cond_wait): Don't store mutex address if the current value is ~0l. * sysdeps/pthread/pthread_cond_timedwait.c (__pthread_cond_timedwait): Likewise. * sysdeps/pthread/pthread_cond_broadcast.c (__pthread_cond_broadcast): Don't use requeue for pshared condvars. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S (__pthread_cond_wait): Don't store mutex address if the current value is ~0l. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S (__pthread_cond_timedwait): Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S (__pthread_cond_broadcast): Don't use requeue for pshared condvars. * pthread_cond_init.c (__pthread_cond_init): Initialize __mutex element with ~0l for pshared condvars, with NULL otherwise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S (__pthread_cond_wait): Don't store mutex address if the current value is ~0l. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S (__pthread_cond_timedwait): Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S (__pthread_cond_broadcast): Don't use requeue for pshared condvars.
* Update.Ulrich Drepper2003-09-221-8/+14
| | | | | | | | | | 2003-09-22 Jakub Jelinek <jakub@redhat.com> * include/atomic.h (atomic_compare_and_exchange_val_rel, atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments to avoid confusion. * sysdeps/unix/opendir.c: Include string.h.
* Update.Ulrich Drepper2003-09-221-30/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-09-22 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/lowlevellock.c (__lll_timedlock_wait): Use lll_futex_timed_wait instead of lll_futex_wait. * sysdeps/unix/sysv/linux/s390/lowlevellock.c: Removed. * sysdeps/unix/sysv/linux/s390/lowlevelmutex.c: Removed. * sysdeps/unix/sysv/linux/s390/libc-lowlevellock.c: Removed. * sysdeps/unix/sysv/linux/s390/libc-lowlevelmutex.c: Removed. * sysdeps/unix/sysv/linux/s390/sem_trywait.c: Removed. * sysdeps/unix/sysv/linux/s390/sem_wait.c: Removed. * sysdeps/unix/sysv/linux/s390/sem_post.c: Removed. * sysdeps/unix/sysv/linux/s390/sem_timedwait.c: Removed. * sysdeps/unix/sysv/linux/s390/lowlevellock.h: Include atomic.h. Completely revamp the locking macros. No distinction between normal and mutex locking anymore. * sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/ia64/lowlevellock.h (__lll_lock_wait, __lll_lock_timedwait): Fix prototypes. * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h (__lll_lock_wait, __lll_lock_timedwait): Likewise. (lll_mutex_lock, lll_mutex_cond_lock): Use _val instead of _bool macros, add __builtin_expect. (lll_mutex_timedlock): Likewise. Fix return value. * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: Removed. * sysdeps/unix/sysv/linux/i386/i586/libc-lowlevelmutex.S: Removed. * sysdeps/unix/sysv/linux/i386/i586/lowlevelmutex.S: Removed. * sysdeps/unix/sysv/linux/i386/i686/libc-lowlevelmutex.S: Removed. * sysdeps/unix/sysv/linux/i386/i686/lowlevelmutex.S: Removed. * sysdeps/unix/sysv/linux/x86_64/libc-lowlevelmutex.S: Removed. * sysdeps/unix/sysv/linux/lowlevelmutex.c: Removed. * sysdeps/unix/sysv/linux/libc-lowlevelmutex.c: Removed.
* Update.Ulrich Drepper2003-09-221-1/+4
| | | | | | | 2003-09-22 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Don't play tricks like jumping over the lock prefix.
* Update.Ulrich Drepper2003-09-2213-372/+237
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Removed. * sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Adjust for new mutex implementation. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_barrier_wait.S: Likewise * sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: Likewise. Don't use requeue. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Likewise.
* Update.Ulrich Drepper2003-09-091-1/+1
| | | | | | | | | | | | | | | | | | 2003-09-08 Jakub Jelinek <jakub@redhat.com> * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit. (__u_quad_t): Make unsigned long int if 64-bit. (__SQUAD_TYPE): Make long int if 64-bit. (__UQUAD_TYPE): Make unsigned long int if 64-bit. * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove. 2003-09-08 Ulrich Drepper <drepper@redhat.com> * Makefile (tests): Run check-c++-types.sh if possible. * scripts/check-c++-types.h: New file. * scripts/data/c++-ctypes-i386-linux-gnu.data: New file. contiguous case. Bug report from Prem Gopalan <prem@mazunetworks.com>.
* Fix a typo.Jakub Jelinek2003-09-021-1/+1
|
* Update.Ulrich Drepper2003-09-022-0/+5
| | | | | | | | | | | | | | 2003-09-02 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/not-cancel.h: New file. * sysdeps/unix/sysv/linux/x86-64/not-cancel.h: New file. * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Make sure the code in subsections has a symbol associated with it. * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h (PSEUDO): Also defined symbol for entry point to avoid cancellation. * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h (PSEUDO): Likewise.
* Define _POSIX_THREAD_PRIORITY_SCHEDULING.Jakub Jelinek2003-09-011-0/+3
|
* Update.Ulrich Drepper2003-07-082-2/+2
| | | | | | | | | | | | | | | | | | | | 2003-07-08 Jakub Jelinek <jakub@redhat.com> * pthreadP.h (__pthread_unwind_next, __pthread_register_cancel, __pthread_unregister_cancel): Add prototypes and hidden_proto. * unwind.c (__pthread_unwind_next): Add hidden_def. * cleanup.c (__pthread_register_cancel, __pthread_unregister_cancel): Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S (__new_sem_wait): Use HIDDEN_JUMPTARGET to jump to __pthread_unwind. * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait): Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S (sem_wait): Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait): Likewise. * sysdeps/unix/sysv/linux/i386/pthread_once.S (__pthread_once): Use HIDDEN_JUMPTARGET to call __pthread_register_cancel, __pthread_unregister_cancel and __pthread_unwind_next.
* Update.Ulrich Drepper2003-07-011-19/+132
| | | | | | | 2003-07-01 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/x86_64/pthread_once.S: Add correct cleanup support and unwind info.
* POSIX options for Linux/x86-64 with nptl.Ulrich Drepper2003-06-251-0/+144
|
* Update.Ulrich Drepper2003-06-223-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-06-22 Ulrich Drepper <drepper@redhat.com> * pthreadP.h (__pthread_mutex_init_internal): Mark hidden. (__pthread_mutex_lock_internal): Likewise. (__pthread_mutex_unlock_internal): Likewise. (__pthread_mutex_unlock_usercnt): Declare. * pthread_mutex_destroy.c: Always fail if used in any way. * pthread_mutex_init.c: Update comment. * pthread_mutex_lock.c: If NO_INCR is not defined adjust __nusers. * pthread_mutex_timedlock.c: Adjust __nusers. * pthread_mutex_trylock.c: Adjust __nusers. * pthread_mutex_unlock.c: Old code is in __pthread_mutex_unlock_usercnt and public interfaces are wrapper with pass additional parameter. __pthread_mutex_unlock_usercnt does not adjust __nusers if second parameter zero. * tst-mutex8.c: New file. * Makefile (tests): Add tst-mutex8. * sysdeps/pthread/pthread_cond_timedwait.c: Call __pthread_mutex_unlock_usercnt. * sysdeps/pthread/pthread_cond_wait.c: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise. * sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c: Define NO_INCR. * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_mutex_t): Add __nusers. * 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/x86_64/bits/pthreadtypes.h: Likewise. * pthread_mutex_lock.c: Don't store THREAD_ID in __owner, use TID. * pthread_mutex_timedlock.c: Likewise. * pthread_mutex_trylock.c: Adjust __nusers. * pthread_mutex_unlock.c: Compare with TID not THREAD_ID. * tst-mutex9.c: New file. * Makefile (tests): Add tst-mutex9. * sysdeps/i386/tls.h: Remove THREAD_ID definition. * sysdeps/ia64/tls.h: Likewise. * sysdeps/powerpc/tls.h: Likewise. * sysdeps/s390/tls.h: Likewise. * sysdeps/sh/tls.h: Likewise. * sysdeps/x86_64/tls.h: Likewise. * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_mutex_t): Change type of __owner. * 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/x86_64/bits/pthreadtypes.h: Likewise.
* Update.Ulrich Drepper2003-06-181-7/+7
| | | | | | | | | * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_mutex_lock): Add ax to clobber list. (lll_mutex_cond_lock): Likewise. (lll_mutex_unlock): Likewise. (lll_lock): Likewise. (lll_unlock): Likewise.
* Update.Ulrich Drepper2003-06-171-3/+21
| | | | | | | 2003-06-17 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before returning because seconds==0.
* Update.Ulrich Drepper2003-06-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-06-15 Ulrich Drepper <drepper@redhat.com> Fix cancellation point handling wrt exception based cleanup. * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions. * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c with exceptions. * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c, sleep.c, wait.c, waitid.c, and waitpid.c with exceptions. * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with exceptions. * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c, sigwait.c, and sigwaitinfo.c with exceptions. * stdlib/Makefile: Compile system.c with exceptions. * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions. * termios/Makefile: Compile tcdrain.c with exceptions. * sysdeps/generic/lockf.c: Add comment explaining the cancellation situation. * sysdeps/generic/pselect.c: Likewise. * sysdeps/posix/sigpause.c: Likewise. * sysdeps/posix/system.c: Likewise. * sysdeps/posix/waitid.c: Likewise. * sysdeps/unix/sysv/linux/sleep.c: Likewise. * sysdeps/unix/sysv/linux/usleep.c: Likewise. * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of INTERNAL_SYSCALL to not use push inside asm statement so that unwind info is correct around the syscall. * sysdeps/unix/clock_nanosleep.c: Add cancellation support. * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
* Update.Ulrich Drepper2003-06-081-101/+8
| | | | | | | | 2003-06-08 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h: Remove hand-written CFI generation code. Since ENTRY/END also initiated CFI frames this caused two CFI sets to be generated.
* Update.Ulrich Drepper2003-06-082-24/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-06-07 Ulrich Drepper <drepper@redhat.com> * cleanup_routine.c: New file. * Versions (libpthread) [GLIBC_2.3.3]: Add __pthread_cleanup_routine. * sysdeps/pthread/pthread.h: Add support for fully exception-based cleanup handling. * Makefile (libpthread-routines): Add cleanup_routine. Add more CFLAGS variables to compile with exceptions. Add comments why which file needs unwind tables. (tests) [have-forced-unwind==yes]: Add tst-cancelx* and tst-cleanupx* tests. * tst-cancelx1.c: New file. * tst-cancelx2.c: New file. * tst-cancelx3.c: New file. * tst-cancelx4.c: New file. * tst-cancelx5.c: New file. * tst-cancelx6.c: New file. * tst-cancelx7.c: New file. * tst-cancelx8.c: New file. * tst-cancelx9.c: New file. * tst-cancelx10.c: New file. * tst-cancelx11.c: New file. * tst-cancelx12.c: New file. * tst-cancelx13.c: New file. * tst-cancelx14.c: New file. * tst-cancelx15.c: New file. * tst-cleanupx0.c: New file. * tst-cleanupx0.expect: New file. * tst-cleanupx1.c: New file. * tst-cleanupx2.c: New file. * tst-cleanupx3.c: New file. * tst-cleanup0.c: Make standard compliant. * tst-cleanup1.c: Likewise. * sysdeps/unix/sysv/linux/sem_timedwait.c: Add cancellation support. * sysdeps/unix/sysv/linux/sem_wait.c: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise. * sysdeps/i386/tcb-offsets.sym: Add RESULT, CANCELHANDLING, and CLEANUP_JMP_BUF. * sysdeps/x86_64/tcb-offsets.sym: Likewise. * tst-cancel12.c: New file. * tst-cancel13.c: New file. * tst-cancel14.c: New file. * tst-cancel15.c: New file. * Makefile (tests): Add tst-cancel12, tst-cancel13, tst-cancel14, and tst-cancel15. * tst-cancel1.c: Add some comments. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Compute relative timeout correctly.
* Update.Ulrich Drepper2003-06-055-18/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-06-05 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_rwlock_t): Change type of __writer element to int. * sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/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/x86_64/bits/pthreadtypes.h: Likewise. * sysdeps/i386/tcb-offsets.sym: Replace SELF entry with TID entry. * sysdeps/x86_64/tcb-offsets.sym: Likewise. * pthread_rwlock_trywrlock.c: Store TID not self pointer in __writer. Compare with TID to determine deadlocks. * sysdeps/pthread/pthread_rwlock_rdlock.c: Likewise. * sysdeps/pthread/pthread_rwlock_timedrdlock.c: Likewise. * sysdeps/pthread/pthread_rwlock_timedwrlock.: Likewise. * sysdeps/pthread/pthread_rwlock_wrlock.c: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise. * Makefile (tests): Add tst-rwlock12. * tst-rwlock12.c: New file.
* Update.Ulrich Drepper2003-06-011-1/+1
| | | | | | | | | 2003-06-01 Ulrich Drepper <drepper@redhat.com> * elf/Makefile (CFLAGS-dl-runtime.c): Define. * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match stpncpy.
* (__lll_mutex_lock_wait): Replace one memory operation with one register ↵Ulrich Drepper2003-05-301-4/+6
| | | | operation.
* Update.Ulrich Drepper2003-05-273-17/+23
| | | | | | | | | | | | | 2003-05-26 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S: Fix typo in register name. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Use parameters correctly. Actually use requeue. Little optimization. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Store mutex address early. Handle cancellation state as 32-bit value. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise. Remove unnecessary label.
* Fix typo in register name.Ulrich Drepper2003-05-271-1/+1
|
* Update.Ulrich Drepper2003-05-266-22/+92
| | | | | | | | | 2003-05-25 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_FUTEX_REQUEUE for >= 2.5.70. * math/test-fenv.c (feexcp_nomask_test): Fix comment.
* Update.Ulrich Drepper2003-05-101-4/+0
| | | | | | | | 2003-05-10 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: Remove futex related macros. * sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise.