Siddhesh Poyarekar
c30e8edf7c
Unlock mutex before going back to waiting for PI mutexes
...
[BZ #14417 ]
A futex call with FUTEX_WAIT_REQUEUE_PI returns with the mutex locked
on success. If such a successful thread is pipped to the cond_lock by
another spuriously woken waiter, it could be sent back to wait on the
futex with the mutex lock held, thus causing a deadlock. So it is
necessary that the thread relinquishes the mutex before going back to
sleep.
2012-10-05 18:52:36 +05:30
Siddhesh Poyarekar
adcdc775e1
Fix clone flag name in comment to CLONE_CHILD_CLEARTID.
2012-10-02 08:52:55 +05:30
Joseph Myers
93a78ac437
Remove __ASSUME_POSIX_TIMERS.
2012-08-16 14:03:43 +00:00
Andreas Schwab
842a39cd1a
Remove unused pseudo_end label
2012-07-25 21:58:17 +02:00
H.J. Lu
0e20515a17
Use x86-64 bits/pthreadtypes.h/semaphore.h for i386/x86-64
2012-05-30 17:29:22 -07:00
Andreas Schwab
4d17e68350
Remove use of INTDEF/INTUSE in nptl
2012-05-30 00:45:53 +02:00
Roland McGrath
5acf7263d5
Add systemtap static probe points in generic and x86_64 pthread code.
2012-05-25 13:41:03 -07:00
H.J. Lu
f16af74217
Use R*_LP to load pointer and operate on stack
2012-05-15 14:25:31 -07:00
H.J. Lu
d9754f5572
Use LP_OP(cmp) and RCX_LP on dep_mutex pointer
2012-05-15 13:39:25 -07:00
H.J. Lu
dde05f0093
Use LP_OP(op), LP_SIZE and ASM_ADDR in sem_wait.S
2012-05-15 12:48:26 -07:00
H.J. Lu
9dba3b5c0a
se LP_OP(op), LP_SIZE and ASM_ADDR in sem_timedwait.S
2012-05-15 12:47:31 -07:00
H.J. Lu
5f658cf147
Use LP_OP(cmp) on NWAITERS
2012-05-15 10:25:51 -07:00
H.J. Lu
6cae4b26ca
Use LP_SIZE and ASM_ADDR in pthread_once.S
2012-05-15 10:24:19 -07:00
H.J. Lu
592f90e6ec
Use LP_OP(cmp), R*_LP, LP_SIZE and ASM_ADDR
2012-05-15 10:23:22 -07:00
H.J. Lu
0e8860ad21
Use LP_OP(cmp), R*_LP, LP_SIZE and ASM_ADDR
2012-05-15 10:21:32 -07:00
H.J. Lu
30996e9369
Use LP_OP(cmp) and RCX_LP on dep_mutex pointer
2012-05-15 10:20:15 -07:00
H.J. Lu
289ac4352a
Use LP_OP(mov) and RDI_LP on pointer
2012-05-15 10:19:11 -07:00
H.J. Lu
10f74fbcde
Use LP_SIZE and load timeout pointer into RDX_LP
2012-05-15 10:03:56 -07:00
H.J. Lu
b8caea2cb9
Add x32 pthread types
2012-05-14 12:56:56 -07:00
H.J. Lu
c0d2c8538a
Check __x86_64__ for __cleanup_fct_attribute
2012-05-11 10:12:42 -07:00
H.J. Lu
4adaaafc9e
Use __NR_futex to define SYS_futex
2012-03-19 14:54:35 -07:00
David S. Miller
22f9d9df92
Fix stray references to __pthread_attr
...
* sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Don't refer to non-existing
__pthread_attr.
* 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.
2012-02-27 12:59:16 -08:00
Ulrich Drepper
8da0464f6f
Fix name mangling of pthread_attr_t after change
2012-02-26 21:42:53 -05:00
Ulrich Drepper
4a3dded527
Work around problem of pthread_attr_t definition with old compilers
2012-02-26 17:41:17 -05:00
Ulrich Drepper
4efeffc1d5
Fix up POSIX testing in conformtest
2012-02-26 13:17:27 -05:00
Marek Polacek
d463ab10dd
Remove unused Makefile.
2012-02-15 21:07:06 +01:00
Paul Eggert
59ba27a63a
Replace FSF snail mail address with URLs.
2012-02-09 23:18:22 +00:00
Andreas Schwab
c5a0802a68
Handle EAGAIN from FUTEX_WAIT_REQUEUE_PI
2011-11-30 11:03:19 +01:00
Ulrich Drepper
c2b18f7a0e
Add missing register initialization in x86-64 pthread_cond_timedwait
2011-10-29 15:50:01 -04:00
Ulrich Drepper
d063d16433
Remove support for !USE___THREAD
2011-09-10 16:50:28 -04:00
H.J. Lu
1e4bd093e6
Fix macro used in test
2011-09-08 23:53:04 -04:00
Ulrich Drepper
9e5c9dcd57
Remove gettimeofday vsyscall use from x86-86 libpthread
2011-09-07 00:14:06 -04:00
Ulrich Drepper
a0e1f41bd4
Don't call gettimeofday vsyscall in x86-64 sem_timedwait
2011-09-06 23:17:53 -04:00
Andreas Schwab
a724d1b9bf
Fix stack alignment on x86_64
2011-08-09 10:07:10 -04:00
Andreas Schwab
2983d85ee5
Work around kernel rejecting valid absolute timestamps
2010-07-01 19:07:14 -07:00
Andreas Schwab
b55ec98c64
Fix infloop in __pthread_disable_asynccancel on x86_64
2009-11-27 21:37:30 -08:00
Ulrich Drepper
62616842ec
Minimal unwind section size reduction.
2009-11-17 23:13:08 -08:00
Ulrich Drepper
cd16986ee3
Rvert accidental checkins.
2009-08-22 17:58:04 -07:00
Andreas Schwab
15efafdf07
Add sigstack handling to Linux ____longjmp_chk on powerpc.
2009-08-22 02:01:51 -07:00
Ulrich Drepper
ae0d545003
Add CFI directives to x86-64 pthread_rwlock_unlock.
2009-08-11 20:47:36 -07:00
Ulrich Drepper
1bc2b97ee4
Add CFI directives to x86-64 pthread_rwlock_{rd,wr)lock.
2009-08-10 11:26:16 -07:00
Andreas Schwab
ec4922395b
Fix check for PI mutex in x86-64 pthread_cond_signal
...
Register eax contains the syscall number, use a different one instead.
2009-08-10 08:10:11 -07:00
Ulrich Drepper
efa0569d2b
Optimize x86-64 version of sem_timedwait.
2009-08-08 17:48:09 -07:00
Ulrich Drepper
49eea97b00
Another minor optimization of x86-64 pthread_cond_wait.
2009-08-08 10:21:46 -07:00
Ulrich Drepper
9083bcc5dc
Small optimizations to cancellable x86-64 code.
2009-08-07 20:36:53 -07:00
Ulrich Drepper
421665c40a
Optimize x86-64 syscall cancellation handling.
...
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-08-04 11:03:46 -07:00
Ulrich Drepper
b0948ffdcb
Fix bookkeeping in mutex when using requeue_pi.
2009-07-28 09:40:39 -07:00
Ulrich Drepper
f1adf1f490
Fix pthread_cond_timedwait error handling on old kernels.
2009-07-23 16:39:06 -07:00
Ulrich Drepper
c3db953c16
Minor optimizations of last x86-64 condvar changes.
2009-07-20 08:39:47 -07:00
Ulrich Drepper
42e69bcf11
Support requeueing for condvars using PI mutex. x86-64 only.
...
Add support for the new FUTEX_WAIT_REQUEUE_PI and FUTEX_CMP_REQUEUE_PI
options of futex.
2009-07-19 20:56:40 -07:00