aboutsummaryrefslogtreecommitdiff
path: root/nptl
AgeCommit message (Collapse)AuthorFilesLines
2009-08-23More namespace cleanups.Ulrich Drepper2-4/+10
2009-08-22Rvert accidental checkins.Ulrich Drepper6-547/+11
2009-08-22Add sigstack handling to Linux ____longjmp_chk on powerpc.Andreas Schwab6-11/+547
2009-08-11Add CFI directives to x86-64 pthread_rwlock_unlock.Ulrich Drepper2-2/+8
2009-08-10Add CFI directives to x86-64 pthread_rwlock_{rd,wr)lock.Ulrich Drepper3-2/+12
2009-08-10Fix check for PI mutex in x86-64 pthread_cond_signalAndreas Schwab2-3/+9
Register eax contains the syscall number, use a different one instead.
2009-08-08Optimize x86-64 version of sem_timedwait.Ulrich Drepper2-65/+148
2009-08-08Another minor optimization of x86-64 pthread_cond_wait.Ulrich Drepper2-15/+13
2009-08-07Small optimizations to cancellable x86-64 code.Ulrich Drepper5-61/+49
2009-08-04Optimize x86-64 syscall cancellation handling.Ulrich Drepper6-44/+191
The syscall wrappers had to save and restore the syscall parameter values and return value when calling the functions to enable/disable cancellation were called. Not anymore. The called functions are special and don't modify any unexpected registers.
2009-07-31Macro cleanup.Ulrich Drepper2-8/+12
Better definition of the *_NITSET macros.
2009-07-31Regenerated.Ulrich Drepper1-8/+40
2009-07-29Fix x86-64 TCB alignment for future processor versions.Ulrich Drepper2-4/+13
2009-07-29Preserve SSE registers in runtime relocations on x86-64.Ulrich Drepper3-18/+64
SSE registers are used for passing parameters and must be preserved in runtime relocations. This is inside ld.so enforced through the tests in tst-xmmymm.sh. But the malloc routines used after startup come from libc.so and can be arbitrarily complex. It's overkill to save the SSE registers all the time because of that. These calls are rare. Instead we save them on demand. The new infrastructure put in place in this patch makes this possible and efficient.
2009-07-28Fix bookkeeping in mutex when using requeue_pi.Ulrich Drepper9-24/+83
2009-07-27pthread_mutex_unlock needs to use _rel semantics for atomic ops.Ulrich Drepper2-3/+9
2009-07-27Revert "Memory ordering in pthread_mutex_{,timed}lock."Ulrich Drepper3-19/+12
This reverts commit 7b7f43bed134db6a0da34282fffcbf0af10d4613.
2009-07-26Memory ordering in pthread_mutex_{,timed}lock.Ulrich Drepper3-12/+19
All commits should have happened before the mutex lock is taken. Therefore use the _rel variant of the cmpxchg atomic op.
2009-07-23Check for .cfi_{personality,lsda} on x86-64.Ulrich Drepper3-0/+61
We need this support in NPTL now to avoid the hand-coded tables.
2009-07-23Fix pthread_cond_timedwait error handling on old kernels.Ulrich Drepper2-2/+7
2009-07-20Minor optimizations of last x86-64 condvar changes.Ulrich Drepper3-23/+22
2009-07-19Support requeueing for condvars using PI mutex. x86-64 only.Ulrich Drepper6-36/+177
Add support for the new FUTEX_WAIT_REQUEUE_PI and FUTEX_CMP_REQUEUE_PI options of futex.
2009-07-19Make x86-64 pthread_cond_timedwait more robust.Ulrich Drepper2-0/+7
It just happens that __pthread_enable_asynccancel doesn't modify the $rdi register. But this isn't guaranteed. Hence we reload the register after the calls.
2009-07-19Extend x86-64 __lll_robust_timedlock_wait to use futex syscall with absolute ↵Ulrich Drepper2-2/+80
timeout.
2009-07-18Add more sem_timedwait tests.Ulrich Drepper3-1/+20
2009-07-18Extend x86-64 pthread_rwlock_timedrdlock to use futex syscall with absolute ↵Ulrich Drepper2-18/+57
timeout.
2009-07-18Pretty printing last change.Ulrich Drepper1-6/+6
2009-07-18Extend x86-64 pthread_rwlock_timedwrlock to use futex syscall with absolute ↵Ulrich Drepper2-12/+53
timeout.
2009-07-18Remove leftover cfi.Ulrich Drepper1-4/+1
2009-07-18Extend pthread_cond_timedwait tests.Ulrich Drepper2-1/+18
2009-07-18Extend x86-64 pthread_cond_timedwait to use futex syscall with absolute timeout.Ulrich Drepper2-126/+296
2009-07-18Optimize x86-64 pthread_cond_timedwait.Ulrich Drepper2-144/+190
Instead of actively registering an unwind buffer we now use the exception handling functionality of the gcc runtime.
2009-07-18Optimize x86-64 pthread_cond_wait.Ulrich Drepper3-144/+315
Instead of actively registering an unwind buffer we now use the exception handling functionality of the gcc runtime.
2009-07-17Extend x86-64 sem_timedwait to use futex syscall with absolute timeout.Ulrich Drepper2-46/+120
2009-07-17Consistently use symbolic constants.Ulrich Drepper1-4/+3
2009-07-17Replace hand-coded unwind tables from x86-64 sem_timedwait.Ulrich Drepper2-122/+31
2009-07-17Optimize x86-64 sem_wait for uncontested semaphore.Ulrich Drepper2-24/+30
2009-07-17Replace hand-coded unwind tables from x86-64 sem_wait.Ulrich Drepper2-101/+26
2009-07-17Replace hand-coded unwind tables from x86-64 pthread_once.Ulrich Drepper2-106/+24
2009-07-17Replace hand-coded unwind tables from x86-64 pthread_cond_wait.Ulrich Drepper2-76/+24
2009-06-12Implement pthread_sigqueue.Ulrich Drepper5-2/+102
The kernel from 2.3.31 on supports the rt_tgsigqueueinfo syscall. Use it to implement the non-standard extension which, like sigqueue, can pass additional data to the receiving thread.
2009-06-11Fix futex syscall parameter for x86 absolute timeout waits.Bryan Kadzban2-1/+9
This affects only installations compiled for kernels older than 2.6.18.
2009-05-16libc-cancellation.c cleanup.Ulrich Drepper4-11/+35
The unrelated function __libc_cleanup_routine should not be in this file. Move it into its own file.
2009-05-16Unify source for async cancel handling.Ulrich Drepper4-189/+12
Unify all three places where we enable async cancellation for syscalls. Optimize a bit.
2009-05-16Rename nptl/init.c to nptl/nptl-init.c.Ulrich Drepper3-3/+9
Needed to allow overwriting architectures init.c in csu and nptl individually. Fixes BZ #9924.
2009-05-15ChangeLog entries incorrectly applied.Ulrich Drepper1-25/+0
2009-05-15Add missing export of fallocate64 on 32-bit platforms.Jakub Jelinek1-0/+18
Due to a pasto the fallocate64 interface, introduced in glibc 2.10, isn't exported for 32-bit Linux platforms. It is too late for this now so exported them for glibc 2.11.
2009-05-15Don't try to cleanup libselinux and libaudit.Jakub Jelinek1-0/+7
Because we are not shutting down the other threads first another thread might work on a query before the process shuts down. In this case the now uninitialized libselinux and libaudit might be used. Just don't free the resources. It's not necessary anyway because the process is about to terminate.
2009-05-15Fix change to prevent cancel signal in unsafe places.Ulrich Drepper4-14/+16
The bits tested to decide when to delay the return when switching off async cancel mode were wrong. Fix that. Also close a race condition in pthread_cancel where the bit indicating the cancellation is unconditionally set even if the cancel type might have changed.
2009-05-15No cancel signal in unsafe places.Ulrich Drepper3-2/+32
When disabling async cancellation we cannot return from the function call if the thread is canceled. This happens when the cancel bits have been set before async cancel is disabled but the signal hasn't been sent/received yet. Delay for as long as necessary since otherwise the signal might be received in an unsafe context.