| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
nptl/
* sysdeps/unix/sysv/linux/alpha/lowlevellock.h (lll_robust_mutex_dead,
lll_robust_mutex_trylock, lll_robust_mutex_lock,
lll_robust_mutex_cond_lock, lll_robust_mutex_timedlock,
lll_robust_mutex_unlock): New macros.
(__lll_robust_lock_wait, __lll_robust_timedlock_wait): New prototypes.
* sysdeps/unix/sysv/linux/s390/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/lowlevelrobustlock.c: New file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
(lll_futex_wake_unlock): Define.
* sysdeps/unix/sysv/linux/alpha/lowlevellock.h (FUTEX_WAKE_OP,
FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
(lll_futex_wake_unlock): Define.
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h (FUTEX_WAKE_OP,
FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
(lll_futex_wake_unlock): Define.
* sysdeps/unix/sysv/linux/s390/lowlevellock.h (FUTEX_WAKE_OP,
FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
(lll_futex_wake_unlock): Define.
* sysdeps/unix/sysv/linux/sparc/lowlevellock.h (FUTEX_WAKE_OP,
FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
(lll_futex_wake_unlock): Define.
* sysdeps/pthread/pthread_cond_signal.c (__pthread_cond_signal): Use
lll_futex_wake_unlock.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S
(FUTEX_WAKE_OP, FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
(__pthread_cond_signal): Use FUTEX_WAKE_OP.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
(FUTEX_WAKE_OP, FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
(__pthread_cond_signal): Use FUTEX_WAKE_OP.
|
|
|
|
|
|
| |
2004-06-03 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-12-02 David Mosberger <davidm@hpl.hp.com>
* sysdeps/ia64/elf/initfini.c: Add unwind info.
* sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
attribute "unused".
(elf_machine_dynamic): Mark with attributes "unused" and "const".
(elf_machine_runtime_setup): Likewise.
* sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
attribute "always_inline".
* sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
Likewise.
* configure.in: Check whether compiler has libunwind support.
* config.make.in (have-cc-with-libunwind): New variable.
* config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
* Makeconfig (gnulib): If have-cc-withh-libunwind is "yes", also
mention -lunwind.
003-11-12 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
Likewise for DO_INLINE_SYSCALL. Make INTERNAL_SYSCALL use
DO_INLINE_SYSCALL.
* sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
instead of DO_CALL().
* sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
of DO_CALL().
* sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
to take advantage of DO_CALL() macro.
* sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
* elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
program header. On ia64, the check failed previously because
there are two program headers.
* sysdeps/generic/s_nexttowardf.c: Likewise.
* math/bug-nexttoward.c: New file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/lowlevellock.c: Likewise.
* sysdeps/pthread/pthread_cond_signal.c: Don't use requeue.
|
|
|
|
|
|
|
| |
2003-05-30 Ulrich Drepper <drepper@redhat.com>
* scripts/config.guess: Update from master copy.
* scripts/config.sub: Likewise.
|
|
|
|
|
|
|
|
|
|
| |
2003-05-30 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h
(__lll_mutex_cond_lock): Add one to value parameter of
__lll_lock_wait to reflect reality in the futex syscall.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h
(lll_mutex_cond_lock): Likewise.
|
|
|
|
|
|
|
|
| |
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h
(__lll_mutex_unlock_force): New function.
(lll_mutex_unlock_force): Use __lll_mutex_unlock_force.
* tst-rwlock7.c (do_test): Use correct format specifier.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-05-29 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h (lll_futex_requeue):
Find break parameter in correct asm argument.
2003-05-30 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h
(pthread_cond_t): Add __mutex.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h (FUTEX_REQUEUE,
lll_futex_requeue, lll_mutex_unlock_force): Define.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* posix/sched.h: Change prototypes of sched_getaffinity and
sched_setaffinity. Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
* sysdeps/generic/sched_getaffinity.c: Adjust definition.
* sysdeps/generic/sched_setaffinity.c: Likewise.
* sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
__CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
__CPU_CLR, and __CPU_ISSET.
* sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
* sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
* sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
* include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
(atomic_exchange_rel): New #define.
* sysdeps/ia64/bits/atomic.h: Likewise.
* sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
atomic_exchange.
* sysdeps/m68k/m68020/bits/atomic.h: Likewise.
* sysdeps/powerpc/bits/atomic.h: Likewise.
* sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
* sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
* sysdeps/x86_64/bits/atomic.h: Likewise.
* csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h (__lll_mutex_lock):
Use atomic_exchange_and_add instead of __lll_add.
(__lll_mutex_timedlock): Likewise.
Patch by Ian Wienand.
2003-03-24 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
(SINGLE_THREAD_P): Fix typo.
* tst-cancel-wrappers.sh: Handle '.'ed symbols.
2003-03-31 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add tst-align.
* tst-align.c: New file.
* sysdeps/i386/Makefile: Define CFLAGS-tst-align.
* sysdeps/x86_64/Makefile: Likewise.
* tst-tsd2.c: Add casts to avoid warnings.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-03-20 Ulrich Drepper <drepper@redhat.com>
* include/atomic.h: Define atomic_compare_and_exchange_val_acq,
atomic_compare_and_exchange_val_rel,
atomic_compare_and_exchange_bool_acq, and
atomic_compare_and_exchange_bool_rel instead of
atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
* sysdeps/i386/i486/bits/atomic.h: Define
__arch_compare_and_exchange_val_*_acq instead of
__arch_compare_and_exchange_*_acq.
* sysdeps/x86_64/bits/atomic.h: Likewise.
* sysdeps/ia64/bits/atomic.h: Define
__arch_compare_and_exchange_bool_*_acq instead of
__arch_compare_and_exchange_*_acq.
* sysdeps/powerpc/bits/atomic.h: Likewise.
* sysdeps/s390/bits/atomic.h: Likewise.
* gmon/mcount.c: Adjust for new form of compare&exchange macros.
* malloc/set-freeres.c: Likewise.
* nscd/cache.c: Likewise.
* stdlib/cxa_finalize.c: Likewise.
* sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2003-03-20 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h: Include <atomic.h>.
Remove __lll_add, __lll_dev_if_positive, and __lll_test_and_set
definitions. Replace uses with calls to atomic_* functions.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/lowlevellock.c: Replace __lll_add and
__lll_test_and_set calls with atomic_exchange_and_add and
atomic_exchange calls respectively.
* sysdeps/unix/sysv/linux/sem_post.c: Likewise.
* sysdeps/unix/sysv/linux/sem_timedwait.c: Likewise.
* sysdeps/unix/sysv/linux/sem_trywait.c: Likewise.
* sysdeps/unix/sysv/linux/sem_wait.c: Likewise.
* sysdeps/unix/sysv/linux/ia64/pthread_once.c: Likewise.
* sysdeps/unix/sysv/linux/ia64/sem_port.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/pthread_once.c: Likewise.
* allocatestack.c (allocate_stack): Assume atomic_exchange_and_add
returns the old value.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sysdeps/unix/sysv/linux/ia64/pthread_once.c: Use __builtin_expect.
Use __lll_add instead of spelling it out. Use protected symbol names.
* sysdeps/unix/sysv/linux/ia64/sem_post.c: Use __builtin_expect.
Use __lll_add.
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h (__lll_compare_and_swap):
Renamed from lll_compare_and_swap. Use new name where necessary.
(__lll_add): Defined.
(__lll_dec_if_positive): Defined.
(__lll_test_and_set): Defined.
* sysdeps/ia64/pthread_spin_init.c: Removed.
* sysdeps/unix/sysv/linux/ia64/lowlevelmutex.c: Removed.
* sysdeps/unix/sysv/linux/ia64/sem_trywait.c: Removed.
* sysdeps/unix/sysv/linux/ia64/sem_wait.c: Removed.
* sysdeps/unix/sysv/linux/ia64/lowlevellock.c: Removed.
* sysdeps/unix/sysv/linux/ia64/libc-lowlevellock.c: Removed.
* sysdeps/unix/sysv/linux/ia64/libc-lowlevelmutex.c: Removed.
* sysdeps/unix/sysv/linux/ia64/sem_timedwait.c: Removed.
|
|
|
|
| |
entries in the map file match too.
|
|
allocate space even for the trailing '/'.
Reported by John Reiser <jreiser@BitWagon.com>.
* sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
ASM_CLOBBERS_6): Define.
(ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
* sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
to match IA-32 order.
* sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
|