Commit Graph

1180 Commits

Author SHA1 Message Date
Thomas Schwinge ebb92a491f SH calling __gmon_start__ from pt-initfini.c. 2009-11-30 06:24:22 -08:00
Andreas Schwab b55ec98c64 Fix infloop in __pthread_disable_asynccancel on x86_64 2009-11-27 21:37:30 -08:00
Ulrich Drepper 80b3a4ea1c New NPTL POSIX semaphore test. 2009-11-24 16:37:29 -08:00
Roland McGrath 57a299fe47 Use #include instead of duplication for i386 vs i686 dl-sysdep.h in NPTL. 2009-11-22 17:49:21 -08:00
Ulrich Drepper dfedb126d6 Minor optimizations and cleanups of x86 cond_broadcast. 2009-11-18 06:40:25 -08:00
Dinakar Guniguntala dd7106b3c6 Update cfi offsets for pthread_cond_broadcast and signal fir x86. 2009-11-18 06:33:23 -08:00
Ulrich Drepper 62616842ec Minimal unwind section size reduction. 2009-11-17 23:13:08 -08:00
Ulrich Drepper f8c10bb45b Use cfi directives in x86 pthread_cond_{,timed}wait. 2009-11-17 17:59:33 -08:00
Andreas Schwab 13f6812ffb Make name of libgcc_s library configurable 2009-11-03 23:52:01 +01:00
Ulrich Drepper 9c04f7c155 Fix aliasing problem in tst-sem11. 2009-10-30 09:35:20 -07:00
Daniel Jacobowitz 25db0f6ca9 Fix races in setXid implementation. 2009-10-30 01:00:44 -07:00
Andreas Schwab 3d60eb1734 Fix malformed #pragma. 2009-09-07 08:31:52 -07:00
Ulrich Drepper 01034d7590 Fix whitespaces. 2009-09-02 19:59:43 -07:00
Suzuki Poulose 38eb613663 Fix timer_create to initialize timer_t properly. 2009-09-02 19:58:50 -07:00
Andrew Stubbs 7812c65b90 SH lowlevellock broken for FUTEX_CLOCK_REALTIME. 2009-08-28 14:57:16 -07:00
Ulrich Drepper 84088310ce Handle AVX saving on x86-64 in interrupted smbol lookups.
If a signal arrived during a symbol lookup and the signal handler also
required a symbol lookup, the end of the lookup in the signal handler reset
the flag whether restoring AVX/SSE registers is needed.  Resetting means
in this case that the tail part of the outer lookup code will try to
restore the registers and this can fail miserably.  We now restore to the
previous value which makes nesting calls possible.
2009-08-25 10:42:30 -07:00
Ulrich Drepper b42a214c18 Hint to kernel that thread stack memory can be removed. 2009-08-24 16:23:47 -07:00
Ulrich Drepper 2d094b7395 More namespace cleanups. 2009-08-23 13:59:41 -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 bd03a1afa2 Macro cleanup.
Better definition of the *_NITSET macros.
2009-07-31 22:30:30 -07:00
Ulrich Drepper 586fa886ad Fix x86-64 TCB alignment for future processor versions. 2009-07-29 09:01:04 -07:00
Ulrich Drepper b48a267b8f Preserve SSE registers in runtime relocations on x86-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-29 08:33:03 -07:00
Ulrich Drepper b0948ffdcb Fix bookkeeping in mutex when using requeue_pi. 2009-07-28 09:40:39 -07:00
Ulrich Drepper e73e694e38 pthread_mutex_unlock needs to use _rel semantics for atomic ops. 2009-07-27 13:46:56 -07:00
Ulrich Drepper 052757bfa6 Revert "Memory ordering in pthread_mutex_{,timed}lock."
This reverts commit 7b7f43bed1.
2009-07-27 13:43:01 -07:00
Ulrich Drepper 7b7f43bed1 Memory ordering in pthread_mutex_{,timed}lock.
All commits should have happened before the mutex lock is taken.
Therefore use the _rel variant of the cmpxchg atomic op.
2009-07-26 13:00:04 -07:00
Ulrich Drepper 01b597da40 Check for .cfi_{personality,lsda} on x86-64.
We need this support in NPTL now to avoid the hand-coded tables.
2009-07-23 17:15:56 -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
Ulrich Drepper 515a8908ce Make x86-64 pthread_cond_timedwait more robust.
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-19 14:54:56 -07:00
Ulrich Drepper e2dca2fea3 Extend x86-64 __lll_robust_timedlock_wait to use futex syscall with absolute timeout. 2009-07-19 00:00:17 -07:00
Ulrich Drepper 3d77b2687f Add more sem_timedwait tests. 2009-07-18 22:07:25 -07:00
Ulrich Drepper 32c6c342b6 Extend x86-64 pthread_rwlock_timedrdlock to use futex syscall with absolute timeout. 2009-07-18 21:53:26 -07:00
Ulrich Drepper d979611eb9 Extend x86-64 pthread_rwlock_timedwrlock to use futex syscall with absolute timeout. 2009-07-18 21:35:33 -07:00
Ulrich Drepper f8b6cd2182 Extend pthread_cond_timedwait tests. 2009-07-18 12:45:27 -07:00
Ulrich Drepper e88726b483 Extend x86-64 pthread_cond_timedwait to use futex syscall with absolute timeout. 2009-07-18 12:44:12 -07:00
Ulrich Drepper 92618c954f Optimize x86-64 pthread_cond_timedwait.
Instead of actively registering an unwind buffer we now use the
exception handling functionality of the gcc runtime.
2009-07-18 08:53:18 -07:00
Ulrich Drepper 30b1954abb Optimize x86-64 pthread_cond_wait.
Instead of actively registering an unwind buffer we now use the
exception handling functionality of the gcc runtime.
2009-07-18 08:09:39 -07:00
Ulrich Drepper f351f2b756 Extend x86-64 sem_timedwait to use futex syscall with absolute timeout. 2009-07-17 19:08:54 -07:00
Ulrich Drepper aee2665a17 Replace hand-coded unwind tables from x86-64 sem_timedwait. 2009-07-17 16:26:06 -07:00
Ulrich Drepper 0adae46817 Optimize x86-64 sem_wait for uncontested semaphore. 2009-07-17 15:50:23 -07:00
Ulrich Drepper c3c2f3cf56 Replace hand-coded unwind tables from x86-64 sem_wait. 2009-07-17 15:31:36 -07:00
Ulrich Drepper 63601ccd16 Replace hand-coded unwind tables from x86-64 pthread_once. 2009-07-17 14:45:08 -07:00