Andreas Jaeger
ecbf434213
Reserve new TLS field for x86 and x86_64
...
[BZ #10686 ]
* sysdeps/x86_64/tls.h (struct tcbhead_t): Add __private_ss
field.
* sysdeps/i386/tls.h (struct tcbhead_t): Likewise.
2013-05-15 20:20:54 +02:00
Andi Kleen
66c13581af
Fix tst-mutexpi8
...
2013-05-09 Andi Kleen <ak@linux.intel.com>
* tst-mutex8.c (do_test): Check for ENABLE_PI.
2013-05-09 16:15:50 +02:00
Siddhesh Poyarekar
da1304bcc8
Consolidate pthread_attr value validation
...
Define inline functions that wrap around validation for each of the
pthread attributes to reduce duplication in code.
2013-04-22 10:28:31 +05:30
Andreas Schwab
4f682b2ae9
Extend i486 pthread_cond_timedwait to use futex syscall with absolute timeout
2013-04-11 10:40:39 +02:00
Carlos O'Donell
96497bb806
sem_post.c: Include atomic.h.
...
The sem_post.c file uses atomic functions without including
atomic.h. Add `#include <atomic.h>' to the file to prevent
any compile time warnings when other headers change and
atomic.h isn't implicitly included.
---
nptl/
2013-04-07 Carlos O'Donell <carlos@redhat.com>
* sysdeps/unix/sysv/linux/sem_post.c: Include atomic.h.
2013-04-07 16:13:02 -04:00
Siddhesh Poyarekar
9ac3b5047e
Fix static build when configured with --disable-hidden-plt
...
Fixes BZ #15337 .
Static builds fail with the following warning:
/home/tools/glibc/glibc/nptl/../nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S:80:
undefined reference to `__GI___pthread_unwind'
When the source is configured with --disable-hidden-plt. This is
because the preprocessor conditional in cancellation.S only checks if
the build is for SHARED, whereas hidden_def is defined appropriately
only for a SHARED build that will have symbol versioning *and* hidden
defs are enabled. The last case is false here.
2013-04-04 19:43:56 +05:30
Roland McGrath
e57b0c6100
Avoid unconditional __call_tls_dtors calls in static linking.
2013-03-28 16:52:57 -07:00
Siddhesh Poyarekar
5cebee5db0
Fix up ChangeLog
...
I forgot to fix up the ChangeLog after renaming __default_attr to
__default_pthread_attr in code.
2013-03-19 15:00:08 +05:30
Siddhesh Poyarekar
e903a7138b
Move __default_stacksize into __default_pthread_attr
...
Make __default_pthread_attr object to store default attribute values
for threads.
2013-03-19 14:34:13 +05:30
Siddhesh Poyarekar
69854bb5e9
Rename some static variables
...
Rename some static variables to give them unique names.
2013-03-18 13:44:05 +05:30
Carlos O'Donell
05087fbb0d
Include atomic.h in generic lowlevellock.c.
2013-03-12 23:27:24 -04:00
Roland McGrath
b43769a3f5
Rejigger i386 dl-sysdep.h files.
2013-03-04 09:40:25 -08:00
Carlos O'Donell
4e9b599577
Revert GLIBC_PTHREAD_DEFAULT_STACKSIZE changes.
...
This reverts the change that allows the POSIX Thread default stack size
to be changed by the environment variable
GLIBC_PTHREAD_DEFAULT_STACKSIZE. It has been requested that more
discussion happen before this change goes into 2.18.
2013-03-01 16:18:08 -05:00
Siddhesh Poyarekar
ace4acc8ac
Fix build warning
2013-03-01 20:45:17 +05:30
Siddhesh Poyarekar
e23872c8db
Set default stack size from program environment
...
New environment variable GLIBC_PTHREAD_DEFAULT_STACKSIZE to do this.
2013-03-01 14:15:39 +05:30
David S. Miller
2b7ae1b27f
Add priority inheritance futex support on sparc.
...
* sysdeps/unix/sysv/linux/sparc/lowlevellock.h
(FUTEX_WAIT_REQUEUE_PI): Define.
(FUTEX_CMP_REQUEUE_PI): Likewise.
(lll_futex_wait_requeue_pi): Likewise.
(lll_futex_timed_wait_requeue_pi): Likewise.
(lll_futex_cmp_requeue_pi): Likewise.
2013-02-21 15:20:27 -08:00
Carlos O'Donell
9bf95cbc35
nptl: Fix comment typo in fork.c.
2013-02-21 09:36:43 -05:00
Siddhesh Poyarekar
f4804ca2bb
Fix ChangeLogs
2013-02-18 21:41:34 +05:30
Siddhesh Poyarekar
ba384f6ed9
C++11 thread_local destructors support
...
This feature is specifically for the C++ compiler to offload calling
thread_local object destructors on thread program exit, to glibc.
This is to overcome the possible complication of destructors of
thread_local objects getting called after the DSO in which they're
defined is unloaded by the dynamic linker. The DSO is marked as
'unloadable' if it has a constructed thread_local object and marked as
'unloadable' again when all the constructed thread_local objects
defined in it are destroyed.
2013-02-18 19:08:21 +05:30
Siddhesh Poyarekar
ffaa74cf68
Fix build warnings in some test cases
...
Include stdlib.h to get declaration of exit(3)
2013-02-18 18:17:05 +05:30
Siddhesh Poyarekar
8313cb997d
FUTEX_*_REQUEUE_PI support for non-x86 code
...
Add FUTEX_*_REQUEUE_PI support for the default C code and also add
implementations for s-390 and ppc.
2013-02-18 16:07:10 +05:30
Joseph Myers
daaa7713e9
Remove bounded-pointers build system support.
2013-02-15 15:07:54 +00:00
Joseph Myers
e97ed6ddbe
Remove bp-sym.h and BP_SYM uses from C code.
2013-02-14 13:12:02 +00:00
Andreas Schwab
903ae060db
Don't use GLIBC_PRIVATE errno outside of libraries
2013-02-04 10:01:54 +01:00
Andreas Schwab
cfa8054fbb
Hide reference to mktemp in libpthread
2013-01-16 15:57:11 +01:00
Carlos O'Donell
c0609c5c5e
Remove unnecessary assert on attr in allocate_stack().
2013-01-11 20:52:05 -05:00
H.J. Lu
740b3dbee8
Add --enable-hardcoded-path-in-tests configure option
2013-01-11 07:14:18 -08:00
Andreas Schwab
e3f45e2bbe
Revert "Extend i486 pthread_cond_timedwait to use futex syscall with absolute timeout"
...
This reverts commit 1bd57044e9
.
2013-01-10 10:44:05 +01:00
Andreas Schwab
1bd57044e9
Extend i486 pthread_cond_timedwait to use futex syscall with absolute timeout
...
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
(__pthread_cond_timedwait): If possible use FUTEX_WAIT_BITSET to
directly use absolute timeout.
2013-01-10 09:59:58 +01:00
Joseph Myers
568035b787
Update copyright notices with scripts/update-copyrights.
2013-01-02 19:05:09 +00:00
Joseph Myers
f4cf5f2d8b
Add script to update copyright notices and reformat some to facilitate its use.
2013-01-01 16:29:10 +00:00
Andi Kleen
c93c5dec54
Convert pthread_rwlock_try(rd/wr)lock to prototypes
...
2012-12-28 Andi Kleen <ak@linux.intel.com>
* pthread_rwlock_tryrdlock.c (__pthread_rwlock_tryrdlock):
* Convert
to prototype.
* pthread_rwlock_trywrlock.c (__pthread_rwlock_trywrlock):
Likewise.
2012-12-28 21:25:07 +01:00
David S. Miller
9c7595bda2
Add sparc implementation of lll_futex_timed_wait_bitset
...
nptl/
* sysdeps/unix/sysv/linux/sparc/lowlevellock.h
(lll_futex_timed_wait_bitset): New macro.
2012-12-27 08:20:46 -08:00
Siddhesh Poyarekar
8ebac7785b
[s390] Replace lll_futex_* assembly code with INTERNAL_SYSCALL
2012-12-27 20:43:02 +05:30
Siddhesh Poyarekar
56e7d3ad5c
Fix some build warnings on s390x
2012-12-08 13:03:24 +05:30
Joseph Myers
d39b954531
Remove unused variable from powerpc sem_post.c.
2012-12-04 21:39:04 +00:00
Allan McRae
e30907c3a4
Remove unneeded linking in nptl testsuite
2012-12-03 13:56:07 +10:00
H.J. Lu
c515fb5148
Cast to __intptr_t before casting pointer to int64
2012-11-26 16:45:36 -08:00
Joseph Myers
09e958ed42
Remove unused variable from sem_post.c.
2012-11-21 20:00:52 +00:00
Joseph Myers
fac9916c96
Remove unused variable from pthread_cond_timedwait.c.
2012-11-21 20:00:11 +00:00
Marcus Shawcroft
c485e4d2cc
Adding missing -fexception CFLAGS
2012-11-14 12:35:10 +00:00
Chris Metcalf
91e0d40e89
Bump timeouts on some new nptl tests to support tilepro.
2012-11-06 13:10:19 -05:00
Siddhesh Poyarekar
8f861542dd
[S390,PPC] Implement FUTEX_WAIT_BITSET for timedwait functions
...
Since the FUTEX_WAIT operation takes a relative timeout, the
pthread_cond_timedwait and other timed function implementations have
to get a relative timeout from the absolute timeout parameter it gets
before it makes the futex syscall. This value is then converted back
into an absolute timeout within the kernel. This is a waste and has
hence been improved upon by a FUTEX_WAIT_BITSET operation (OR'd with
FUTEX_CLOCK_REALTIME to make the kernel use the realtime clock instead
of the default monotonic clock). This was implemented only in the x86
and sh assembly code and not in the C code. This patch implements
support for FUTEX_WAIT_BITSET whenever available (since linux-2.6.29)
for s390 and powerpc.
2012-11-05 21:12:52 +05:30
David S. Miller
d3bd58cf0a
Fix coding style in sparc lowlevellock.h
...
nptl/
* sysdeps/unix/sysv/linux/sparc/lowlevellock.h (BUSY_WAIT_NOP):
Add missing spaces.
(__cpu_relax): Likewise.
2012-11-03 15:25:55 -07:00
H.J. Lu
f62c8abcfb
Compile x86 rtld with -mno-sse -mno-mmx
2012-11-02 18:43:27 -07:00
Aurelien Jarno
a9879fee34
Fix nptl/tst-cancel7 for non-bash shells.
2012-10-30 16:32:26 +00:00
David S. Miller
19f1dd5f2d
Define a BUSY_WAIT_NOP for sparc.
...
nptl/
* sysdeps/unix/sysv/linux/sparc/lowlevellock.h (BUSY_WAIT_NOP):
Define when we have v9 instructions available.
* sysdeps/unix/sysv/linux/sparc/sparc64/cpu_relax.S: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/cpu_relax.S: New
file.
* sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/Makefile: New
file.
* sysdeps/unix/sysv/linux/sparc/sparc64/Makefile: Add cpu_relax
to libpthread-routines.
2012-10-28 23:19:00 -07:00
Roland McGrath
b9473651bc
Fix build breakage in tst-cond-except.c.
2012-10-25 17:02:51 -07:00
Joseph Myers
6a345e4261
Use bash to run nptl/tst-tls6.sh.
2012-10-25 21:59:14 +00:00
Roland McGrath
c0a1472e22
Fix compiler warnings in some NPTL tests.
2012-10-25 14:43:10 -07:00
Joseph Myers
cc1290d07e
Support cross-testing.
2012-10-24 21:59:01 +00:00
Roland McGrath
6e6249d0b4
BZ#14743: Move clock_* symbols from librt to libc.
2012-10-24 14:50:46 -07:00
Joseph Myers
0bf57f872c
Don't set resource limits in tst-oddstacklimit-ENV.
2012-10-24 17:13:24 +00:00
Joseph Myers
03ac099f6b
Define and use $(run-built-tests).
2012-10-24 00:08:46 +00:00
Jim Blandy
166bca2480
Add and use $(host-built-program-cmd).
2012-10-23 22:49:59 +00:00
Jim Blandy
aba759841b
Use $(NM) not nm in tst-cancel-wrappers.
2012-10-21 22:38:34 +00:00
Siddhesh Poyarekar
370539fb64
Fix typo in nptl/ChangeLog
2012-10-17 21:05:29 +05:30
Siddhesh Poyarekar
37785907d5
Don't check error return for pthread_cancel in tst-cond25
2012-10-17 21:02:56 +05:30
Siddhesh Poyarekar
9485a40444
Adjust mutex lock in condvar_cleanup if we got it from requeue_pi
...
This completes the fix to bz #14652 .
2012-10-16 14:23:35 +05:30
Carlos O'Donell
54a417345e
Fixup nptl/ChangeLog for last commit.
2012-10-10 23:34:38 -04:00
Carlos O'Donell
0d522f6417
Fix formatting in nptl/sysdeps/pthread/pthread.h.
...
The macro pthread_cleanup_push_defer_np in pthread.h has a misaligned
line continuation marker. This marker was previously aligned, but
recent changes have moved it out of alignment. This change realigns
the marker. This also reduces the diff against the hppa version of
pthread.h where the marker is aligned.
2012-10-10 23:28:52 -04:00
Siddhesh Poyarekar
0e3b5d6a68
Take lock in pthread_cond_wait cleanup handler only when needed
...
[BZ #14652 ]
When a thread waiting in pthread_cond_wait with a PI mutex is
cancelled after it has returned successfully from the futex syscall
but just before async cancellation is disabled, it enters its
cancellation handler with the mutex held and simply calling a
mutex_lock again will result in a deadlock. Hence, it is necessary to
see if the thread owns the lock and try to lock it only if it doesn't.
2012-10-10 12:52:56 +05:30
Roland McGrath
b8493de0ec
Add missing magic to GLIBC_PROVIDES.
2012-10-09 15:41:30 -07:00
David S. Miller
f076216468
Correct libthreadb register access for 64-bit sparc.
...
[BZ #14568 ]
* sysdeps/sparc/tls.h (DB_THREAD_SELF_INCLUDE): Delete.
(DB_THREAD_SELF): Use constants for the register offsets. Correct
the case of a 64-bit debugger with a 32-bit inferior.
2012-10-05 21:22:41 -07:00
H.J. Lu
1d1b34df90
Add test cases for BZ #14557
2012-10-05 10:23:58 -07:00
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
Roland McGrath
9043e2288e
Name space hygeine for madvise.
2012-10-04 16:31:43 -07:00
H.J. Lu
b2f80a478e
Update copyright years
2012-10-02 16:50:47 -07:00
Siddhesh Poyarekar
adcdc775e1
Fix clone flag name in comment to CLONE_CHILD_CLEARTID.
2012-10-02 08:52:55 +05:30
Siddhesh Poyarekar
55a051c985
Fix exception table for i386 pthread_cond_wait
...
[BZ #14477 ]
Add an additional entry in the exception table to jump to
__condvar_w_cleanup2 instead of __condvar_w_cleanup for PI mutexes
when %ebx contains the address of the futex instead of the condition
variable.
2012-10-01 23:21:39 +05:30
Alan Modra
7e2fca8dd2
Fix bugs in powerpc pthread_once.
...
Ref gcc.gnu.org/bugzilla/show_bug.cgi?id=52839#c10
Release barriers are needed to ensure that any memory written by
init_routine is seen by other threads before *once_control changes.
In the case of clear_once_control we need to flush any partially
written state.
2012-09-25 16:30:06 -05:00
Dmitry V. Levin
57c69bef13
Set "fail on error" mode directly in testsuite shell scripts
2012-09-25 02:48:31 +00:00
Dmitry V. Levin
9a9028b1fe
Add copyright notices to testsuite shell scripts
2012-09-25 02:48:13 +00:00
H.J. Lu
620f3d2670
Add "()" when casting to uint64_t for 64-bit store
2012-09-24 09:11:12 -07:00
H.J. Lu
ae30640a32
Cast to uint64_t for 64-bit store
2012-09-19 06:12:37 -07:00
Jeff Law
97bc38d7a5
[BZ #14583 ]
...
* sysdeps/pthread/pthread.h: Fix prototype of __sigsetjmp.
2012-09-14 14:31:29 -06:00
H.J. Lu
9503345f12
Remove unused __rtld_lock_init_recursive macro
2012-09-13 09:58:58 -07:00
H.J. Lu
70d37fe0b5
Fix a typo in ChangeLog
2012-09-10 05:18:44 -07:00
H.J. Lu
e9ceaf254c
Rename LDFLAGS-XXX to LDLIBS-XXX for -lstdc++
2012-09-07 14:11:47 -07:00
H.J. Lu
f5fce0629a
Add tst-cancel21-static.c
2012-09-06 11:50:21 -07:00
Joseph Myers
26889eacc2
Remove __ASSUME_POSIX_CPU_TIMERS.
2012-09-01 21:32:04 +00:00
Joseph Myers
033d54a2d4
Fix sem_post race (bug 14532).
2012-08-31 19:49:31 +00:00
Roland McGrath
b2e1c56272
Make libio compile without _IO_MTSAFE_IO.
2012-08-17 09:35:36 -07:00
Roland McGrath
c75ccd4c3a
Clean up definition of _LIBC_REENTRANT and _IO_MTSAFE_IO.
2012-08-17 09:35:15 -07:00
Joseph Myers
93a78ac437
Remove __ASSUME_POSIX_TIMERS.
2012-08-16 14:03:43 +00:00
Maxim Kuvyrkov
309becf120
Optimize __libc_lock_lock and __libc_lock_trylock for MIPS.
2012-08-15 16:44:30 -07:00
Maxim Kuvyrkov
ef4009734b
Add generic versions of pthread_spin_lock and pthread_spin_trylock.
2012-08-15 16:29:06 -07:00
Joseph Myers
b36137f1d6
Remove __ASSUME_TGKILL.
2012-08-08 23:22:53 +00:00
Joseph Myers
93df14eee8
Remove some pre-2.6.16 Linux kernel conditionals.
2012-08-07 23:03:35 +00:00
Joseph Myers
85fe199795
Remove some pre-2.6.0 Linux kernel conditionals.
2012-08-03 19:54:08 +00:00
Siddhesh Poyarekar
fc56c5bbc1
Fix tst-pthread-getattr test case
...
Get the tst-pthread-getattr fix back with further improvements so that
it does not fail on targets that use the user stack to save
context.
2012-07-28 13:25:01 +05:30
Andreas Schwab
842a39cd1a
Remove unused pseudo_end label
2012-07-25 21:58:17 +02:00
Siddhesh Poyarekar
77b32274e9
Revert fix to tst-pthread-getattr since it fails on sparc
2012-07-25 20:43:55 +05:30
Siddhesh Poyarekar
b2ae49dab8
Fix tst-pthread-getattr test case
...
In some cases, the compiler would optimize out the call to
allocate_and_test and thus result in a false positive for the test
case. Another problem was the fact that the compiler could in some
cases generate additional shifting of the stack pointer, resulting in
alloca moving the stack pointer beyond what is allowed by the
rlimit. Hence, accessing the stackaddr returned by pthread_getattr_np
is safer than relying on the alloca'd result.
Another problem is when RLIMIT may be very large, which may result in
violation of other resource limits. Hence we cap the max stack size to
8M for this test.
2012-07-20 23:28:34 +05:30
Siddhesh Poyarekar
a98430587c
Fix comment that describes sighandler_setxid
2012-07-19 07:04:24 +05:30
Thomas Schwinge
4b2c8da708
SH: __lll_robust_timedlock_wait: Simplify CFI directives.
2012-06-23 12:17:44 +02:00
Siddhesh Poyarekar
18b5e737de
Account for the extra stack size when rlimit is small enough
...
When rlimit is small enough to be used as the stacksize to be returned
in pthread_getattr_np, cases where a stack is made executable due to a
DSO load get stack size that is larger than what the kernel
allows. This is because in such a case the stack size does not account
for the pages that have auxv and program arguments.
Additionally, the stacksize for the process derived from this should
be truncated to align to page size to avoid going beyond rlimit.
2012-06-20 15:08:22 +05:30
Carlos Sánchez de La Lama
24a6dbed9b
Fix build on non-v9 sparc32.
...
nptl/
[BZ #14205 ]
* sysdeps/sparc/sparc32/pthread_spin_lock.S: Do not use v9
branches.
2012-06-07 11:57:09 -07:00
Siddhesh Poyarekar
4af3879c26
Wrap __builtin_expect in pthread.h
...
[BZ #14188 ]
This fixes compilation of programs using pthread_cleanup_push built
with non-gcc compilers and older gcc compilers.
2012-06-04 11:53:57 +05:30
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
865eac65c2
Move CL entry
2012-05-30 08:49:59 +02:00
Andreas Schwab
4d17e68350
Remove use of INTDEF/INTUSE in nptl
2012-05-30 00:45:53 +02:00
Chung-Lin Tang
d701a1abe2
SH: Add CFI directives.
2012-05-28 00:47:07 +02:00
Chung-Lin Tang
65a4de4e06
SH: Add CFI directives.
2012-05-28 00:11:06 +02:00
Siddhesh Poyarekar
9c6ea9facb
Fix stack size and address inconsistency due to executable stack
...
When a stack is marked executable due to loading a DSO that requires
an executable stack, the logic tends to leave out a portion of stack
after the first frame, thus causing a difference in the value returned
by pthread_getattr_np before and after the stack is marked
executable. It ought to be possible to fix this by marking the rest of
the stack as executable too, but in the interest of marking as less of
the stack as executable as possible, the path this fix takes is to
make pthread_getattr_np also look at the first frame as the underflow
end of the stack and compute size and stack top accordingly.
The above happens only for the main process stack. NPTL thread stacks
are not affected by this change.
2012-05-26 09:48:26 +05:30
Rayson Ho
1755728208
i386 port of the pthread SystemTap probes
2012-05-25 13:41:04 -07:00
Roland McGrath
5acf7263d5
Add systemtap static probe points in generic and x86_64 pthread code.
2012-05-25 13:41:03 -07:00
Roland McGrath
3a097cc7a1
Add --enable-systemtap configuration to define static probe points.
2012-05-25 13:40:20 -07:00
Andreas Jaeger
de7f5ce7c5
Fix warnings on Linux/i686
...
Fixes:
../sysdeps/i386/dl-machine.h:336:30: warning: unused variable ‘refsym’ [-Wunused-variable]
rtld.c:1435:3: warning: implicit declaration of function ‘_dl_discover_osversion’ [-Wimplicit-function-declaration]
2012-05-17 20:17:53 +02:00
Joseph Myers
048073995f
Remove fallback definitions of __NR_set_robust_list.
2012-05-15 23:36:35 +00:00
Joseph Myers
a9538892ad
Split up stackguard-macros.h into sysdeps directories.
2012-05-15 23:34:30 +00: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
Siddhesh Poyarekar
439bf404b8
Allow a single-threaded program to cancel itself
...
There is nothing in the POSIX specification to disallow a
single-threaded program from cancelling itself, so we forcibly enable
multiple_threads to allow the next available cancellation point in the
thread to run.
Also added additional tests to cover various cancellation scenarios.
2012-05-15 09:41:57 +05:30
H.J. Lu
2949684c16
Add x32 support to tcbhead_t
2012-05-14 20:58:24 -07:00
H.J. Lu
245a11d7bd
Add __PTHREAD_RWLOCK_INT_FLAGS_SHARED
2012-05-14 16:48:59 -07:00
H.J. Lu
0b254d8f3d
Add sysdeps/x86_64/{64,x32}/shlib-versions
2012-05-14 16:23:57 -07:00
H.J. Lu
b8caea2cb9
Add x32 pthread types
2012-05-14 12:56:56 -07:00
H.J. Lu
d3c6600440
Update comments for CALL_THREAD_FCT
2012-05-11 14:58:18 -07:00
H.J. Lu
60d45b36a5
Add sysdeps/x86_64/x32/tls.h
2012-05-11 14:33:12 -07:00
H.J. Lu
eae2d36a96
Fix a typo in ChangeLo.
2012-05-11 11:34:48 -07:00
H.J. Lu
a04e06bc4c
Use uint64_t on 64-bit integer
2012-05-11 10:14:57 -07:00
H.J. Lu
512ec530c7
Replace movq/%q0 with mov/%0 in THREAD_SELF
2012-05-11 10:13:54 -07:00
H.J. Lu
c0d2c8538a
Check __x86_64__ for __cleanup_fct_attribute
2012-05-11 10:12:42 -07:00
H.J. Lu
1f59b0b121
Check __PTHREAD_MUTEX_HAVE_PREV for mutex initializers
2012-05-11 10:10:37 -07:00
H.J. Lu
c252ec1579
Check __PTHREAD_MUTEX_HAVE_PREV for mutex prev
2012-05-11 10:08:57 -07:00
Thomas Schwinge
be971a2b1c
Hurd: libc_once_get
2012-05-10 15:57:24 -07:00
Chung-Lin Tang
e1b4354e66
Use CFI statements instead of hand-coding .eh_frame.
2012-05-09 17:48:42 +08:00
David S. Miller
76e835cf9e
Fix minor fallout from yesterdays sparc nptl changes.
...
nptl/
* sysdeps/sparc/sparc64/pthread_spin_unlock.S: Fix thinko, we
always have to return 0, especially for the pthread_spin_init
alias.
* sysdeps/sparc/sparc32/pthread_spin_lock.S: Add missing trailing
newline.
* sysdeps/sparc/sparc32/sparcv9/pthread_spin_lock.S: Likewise.
* sysdeps/sparc/sparc64/pthread_spin_lock.S: Likewise.
2012-05-03 11:48:13 -07:00
David S. Miller
e2dbf201ab
Mirror i386 change on sparc: 'Avoid "anonymous" code in pthread_spin_lock'
...
nptl/
* sysdeps/sparc/sparc64/pthread_spin_lock.S: New.
* sysdeps/sparc/sparc64/pthread_spin_lock.c: Delete.
* sysdeps/sparc/sparc64/pthread_spin_unlock.S: New.
* sysdeps/sparc/sparc64/pthread_spin_unlock.c: Delete.
* sysdeps/sparc/sparc64/pthread_spin_trylock.S: New.
* sysdeps/sparc/sparc64/pthread_spin_trylock.c: Delete.
* sysdeps/sparc/sparc64/pthread_spin_init.c: New.
* sysdeps/sparc/sparc32/pthread_spin_lock.S: New.
* sysdeps/sparc/sparc32/pthread_spin_lock.c: Delete.
* sysdeps/sparc/sparc32/pthread_spin_trylock.S: New.
* sysdeps/sparc/sparc32/pthread_spin_trylock.c: Delete.
* sysdeps/sparc/sparc32/sparcv9/pthread_spin_lock.S: New.
* sysdeps/sparc/sparc32/sparcv9/pthread_spin_lock.c: Delete.
* sysdeps/sparc/sparc32/sparcv9/pthread_spin_trylock.S: New.
* sysdeps/sparc/sparc32/sparcv9/pthread_spin_trylock.c: Delete.
* sysdeps/sparc/sparc32/sparcv9/pthread_spin_unlock.S: New.
* sysdeps/sparc/sparc32/sparcv9/pthread_spin_unlock.c: Delete.
* sysdeps/sparc/sparc32/sparcv9/pthread_spin_init.c: New.
2012-05-02 19:04:54 -07:00
Allan McRae
d4c2917fc5
Fix test-suite failues with -Wl,--as-needed
...
Signed-off-by: Allan McRae <allan@archlinux.org>
2012-05-02 20:32:50 -04:00
Paul Pluzhnikov
ff8a695b6d
Kill trailing whitespace.
2012-05-02 14:01:37 -07:00
Paul Pluzhnikov
b93d565a51
Avoid "anonymous" code in pthread_spin_lock.
2012-05-02 13:58:40 -07:00
Andreas Schwab
6d5c57fabd
Don't run tests when cross-compiling
2012-04-28 22:16:37 +02:00
Siddhesh Poyarekar
6e236b9276
move libgcc_s soname definition to shlib-versions
2012-04-26 09:19:54 +05:30
Paul Pluzhnikov
0cec7c5407
Delete unused TLS_GET_FS, TLS_SET_FS macros.
2012-04-20 09:52:13 -07:00
David S. Miller
7ac88e3831
Fix nptl/tst-cond1{6,7,8}.c on 32-bit with many cpus.
...
* tst-cond16.c (do_test): Use a thread stack size which is either
PTHREAD_STACK_MIN or the page size, whichever is larger.
* tst-cond18.c (do_test): Likewise.
2012-03-27 14:25:55 -07:00
H.J. Lu
24d8f4b7dc
Use __asm__("rsp") to get CURRENT_STACK_FRAME
2012-03-19 16:21:21 -07:00
H.J. Lu
4adaaafc9e
Use __NR_futex to define SYS_futex
2012-03-19 14:54:35 -07:00
H.J. Lu
ca7b8af5db
Cast _Unwind_GetCFA return to _Unwind_Ptr first
2012-03-19 13:34:44 -07:00
David S. Miller
7e7fa5f871
Fix libc-lowlevellock.c sysdep finding more generically.
...
nptl/
[BZ #13844 ]
* sysdeps/unix/sysv/linux/libc-lowlevellock.c: Include using <..>
instead of "...".
* sysdeps/unix/sysv/linux/sparc/sparc32/libc-lowlevellock.c:
Delete, not needed.
2012-03-16 20:40:54 -07:00
David S. Miller
c4a7b16eb8
Add missing sparc32 NPTL file otherwise we use the wrong lowlevellock.c implementation.
...
nptl/
[BZ #13844 ]
* sysdeps/unix/sysv/linux/sparc/sparc32/libc-lowlevellock.c: New file.
2012-03-15 21:13:02 -07:00
Paul Eggert
c524201ab0
Replace FSF snail mail address with URL in miscellaneous files.
2012-03-10 00:45:35 +00:00
Joseph Myers
90ad551f73
Make pthread.h define all symbols from time.h.
...
See:
http://www.pasc.org/interps/unofficial/db/p1003.1c/pasc-1003.1c-46.html
http://www.pasc.org/interps/unofficial/db/p1003.1/pasc-1003.1-86.html
https://www.opengroup.org/sophocles/show_mail.tpl?CALLER=index.tpl&source=L&listname=austin-group-l&id=17302
(Geoff Clare, austin-group-l, 9 Mar 2012)
2012-03-09 21:10:45 +00:00
David S. Miller
c64bf5feb3
Update copyright year after my most recent changes.
...
nptl/
* sysdeps/unix/sysv/linux/sparc/sem_post.c: Update copyright year.
/
* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c: Update
copyright year.
* sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
2012-03-08 15:09:27 -08:00
Thomas Schwinge
2edd9a79e5
Work around kernel rejecting valid absolute timestamps.
2012-03-08 11:22:41 +01:00
Thomas Schwinge
c564a81246
Invalid timeouts in SH sem_timedwait.
...
We adjusted nwaiters even though this isn't necessary.
2012-03-08 10:45:05 +01:00
Thomas Schwinge
48aff7765b
Fix 9554ebf2d4
.
...
| Invalid timeouts in i386 sem_timedwait.
|
| We adjusted nwaiters even though this isn't necessary.
2012-03-08 09:33:12 +01:00
Joseph Myers
e7dbb1bec3
Weaken two NPTL configure link tests to compile tests.
2012-03-07 19:34:22 +00:00
Ulrich Drepper
a4300c7a4d
Remove distribute variable from Makefiles
2012-03-07 05:17:13 -05:00
Thomas Schwinge
840df61ea4
Get rid of superfluous assignments in sem_timedwait
2012-03-07 04:11:11 -05:00
Ulrich Drepper
959e12e37b
Fix CL
2012-03-07 00:28:22 -05:00
Ulrich Drepper
abdf2e1915
Better CL
2012-03-06 23:39:31 -05:00
Ulrich Drepper
9463518d0d
Remove private information from libc-lock.h
2012-03-06 23:37:35 -05:00
David S. Miller
e92584001a
Fix several build warnings on sparc.
...
/
* sysdeps/unix/sysv/linux/sparc/sparc64/get_clockfreq.c
(set_obp_int): New function.
(get_obp_int): New function.
(__get_clockfreq_via_dev_openprom): Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Avoid
unused variable warnings on 'val' and use builtin_expect.
(INLINE_SYSCALL): Don't wrap INTERNAL_SYSCALL_ERROR_P with builtin_expect.
(INLINE_CLONE_SYSCALL): Likewise.
nptl/
* sysdeps/unix/sysv/linux/sparc/sem_post.c (__new_sem_post): Use
atomic_increment and remove unused local variable.
(__old_sem_post): Likewise.
2012-03-06 11:15:26 -08: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
d94a467080
Add first fixes for conformtest for POSIX2008
2012-02-26 21:32:56 -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
Joseph Myers
0e7dfaef51
Remove old initfini mechanism.
2012-02-21 00:46:01 +00:00
Richard Henderson
e3b69ca7d1
s390: Convert to crt[in].S.
2012-02-16 09:24:19 -08:00
Kaz Kojima
df83af673b
Add SH target specific crti.S and crtn.S and remove initfini files.
...
Add sysdeps/sh/crti.S, sysdeps/sh/crtn.S and remove sysdeps/sh/elf/initfini.c
and nptl/sysdeps/unix/sysv/linux/sh/pt-initfini.c.
2012-02-16 07:17:24 +09:00
David S. Miller
f63f338062
Move sparc away from the deprecated inifini.c scheme.
...
/
* sysdeps/sparc/Makefile: Add -fPIC when building crt{i,n}.S
* sysdeps/sparc/crti.S: New file.
* sysdeps/sparc/crtn.S: New file.
* sysdeps/sparc/sparc32/Makefile: Remove initfini handling.
* sysdeps/sparc/sparc64/Makefile: Likewise.
nptl/
* sysdeps/sparc/Makefile: Add -fPIC when building pt-crti.S and crtn.S
2012-02-16 12:54:05 -08: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
2832840339
Add missing dependency for pt-crti.o
2012-02-08 16:16:42 +01:00
Joseph Myers
3add8e1353
Support crti.S and crtn.S provided directly by architectures.
2012-02-08 01:45:26 +00:00
Joseph Myers
9a1d92541f
Consistently use macros for x86 PIC thunks.
2012-02-03 23:22:53 +00:00
Ulrich Drepper
5452bffeef
Fix warnings due to return in void functions
2012-01-11 11:56:30 -05:00
Ulrich Drepper
8898f02074
Add const attribute to pthread_equal
2012-01-10 19:37:35 -05:00
Ulrich Drepper
356fa562ec
Consistently added return to pthread_exit
2012-01-10 19:02:21 -05:00
Adhemerval Zanella
f5420cf073
CL
2012-01-08 19:57:22 -05:00
Adhemerval Zanella
232872379e
Use __pthread_get_minstack for AIO helper thread
2012-01-08 19:56:52 -05:00
Marek Polacek
c473bd1cd9
Quash implicit declaration warning
2012-01-08 13:21:50 -05:00
Ulrich Drepper
2119dcfacc
Static linking is always needed
2012-01-08 09:52:29 -05:00
Ulrich Drepper
a784e50247
Remove pre-ISO C support
...
No more __const.
2012-01-07 23:57:22 -05:00
Ulrich Drepper
0269750ca6
Remove non-ELF support
2012-01-07 20:30:26 -05:00
Ulrich Drepper
ecb6fb48b7
Clean up shlib-versions files
...
Ports have their own files
2012-01-07 13:02:29 -05:00
Ulrich Drepper
120ced3f5d
Remove IA-64 support from NPTL
2012-01-07 12:16:05 -05:00
Ulrich Drepper
ee9e064083
Use __pthread_get_minstack in more places
2011-12-22 22:58:17 -05:00
Ulrich Drepper
2c1094bd70
Create internal threads with sufficient stack size
2011-12-22 22:43:39 -05:00
Ulrich Drepper
60e8585f2a
Fix reading thread name from comm file
2011-12-21 19:26:29 -05:00
Carlos O'Donell
caafb2b06b
Return errno on failure in allocate_stack
...
In cases where a function call fails return
errno and allow the caller to fixup the return
code as required by their API.
2011-12-14 21:32:11 -05:00
Jeff Law
e988dba98d
BZ #5245 : pthread_create returns EAGAIN for stack allocation failure, not ENOMEM.
2011-12-14 13:14:56 -08:00
Ulrich Drepper
ade60c8942
Fix CL
2011-12-02 07:34:19 -05:00
Andreas Schwab
c5a0802a68
Handle EAGAIN from FUTEX_WAIT_REQUEUE_PI
2011-11-30 11:03:19 +01:00
Ulrich Drepper
312be3f9f5
Clean up internal fopen uses
...
No need to ever not use c and e.
2011-11-15 04:24:42 -05:00
Ulrich Drepper
c2b18f7a0e
Add missing register initialization in x86-64 pthread_cond_timedwait
2011-10-29 15:50:01 -04:00
Andreas Schwab
3871f58f06
Don't mark memory synchronisation functions as leaf
2011-10-27 17:20:14 +02:00
Ulrich Drepper
485683c35f
Remove warnings in NPTL tests
2011-10-24 21:43:33 -04:00
Ulrich Drepper
10d005f77f
Remove unnecessary include from x86-32 tls.h
2011-10-23 16:31:09 -04:00
Ulrich Drepper
2fa2ae85ca
Fix strnlen change
2011-10-23 16:30:40 -04:00
Ulrich Drepper
fd5bdc0924
Optimize access to isXYZ and toXYZ tables
...
The functions to get the pointers can now depend on the TLS variable
be initialized.
2011-10-15 16:27:08 -04:00
Andreas Schwab
7a775e6b3d
Avoid race between {,__de}allocate_stack and __reclaim_stacks during fork
2011-09-15 15:36:18 +02:00
Ulrich Drepper
83cd142045
Remove --wth-tls option, TLS support is required
2011-09-11 15:02:01 -04:00
Ulrich Drepper
02d46fc4b9
Simplify malloc initialization
...
Singificantly reduce the code needed at malloc initialization. In
the process getpagesize is simplified by always initializing
GLRO(dl_pagesize).
2011-09-10 21:47:36 -04:00
Ulrich Drepper
d063d16433
Remove support for !USE___THREAD
2011-09-10 16:50:28 -04:00
Ulrich Drepper
3ce1f29594
Cleanup of configuration options
...
Make several tool features mandatory and simplify the code.
2011-09-10 14:34:15 -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
David S. Miller
39c4451cec
Fix nptl semaphore cleanup invocation.
2011-09-05 10:01:52 -07:00
Andreas Schwab
523df51151
Fix setxid race handling exiting threads
2011-08-31 11:21:13 +02:00
David S. Miller
e315850c08
Fix typo in tst-cleanup0.out rule.
2011-08-20 21:19:28 -07:00
Roland McGrath
5744c68d78
Align x86 TCB to 64 bytes (cache line size), important for Atom.
2011-08-14 19:26:49 -07:00
Andreas Schwab
a724d1b9bf
Fix stack alignment on x86_64
2011-08-09 10:07:10 -04:00
Ulrich Drepper
7a03a9c8c4
Add read barriers in cancellation initialization
2011-07-22 23:48:22 -04:00
Roland McGrath
4b3d3e282a
Quash a warning in nptl/allocatestack.c
2011-07-14 20:47:19 -07:00
Ulrich Drepper
ecaddd6699
Rebuild configure scripts
2011-07-06 21:29:02 -04:00
Ulrich Drepper
6f8326cacd
Fix robust mutex handling after fork
2011-06-30 20:41:34 -04:00
Andreas Jaeger
c71ca1f89c
Quash two memset undeclared warnings.
2011-06-14 13:11:39 -07:00
Ulrich Drepper
5bdcc10322
Translate kernel error into what pthread_create should return
2011-05-11 18:23:24 -04:00
Jim Meyering
ded5b9b7c7
Remove doubled words.
2011-04-22 21:34:32 -04:00
Ulrich Drepper
e6c6149412
Fix memory leak in TLS of loaded objects.
2011-04-10 22:43:01 -04:00
Ulrich Drepper
e943389325
Remove use of ranlib.
2011-02-15 14:52:29 -05:00
Roland McGrath
c5be0f71d9
Fix comment typos.
2011-01-19 10:20:38 -08:00
Andreas Schwab
1f20b93a6c
Fix missing dependencies and ensure correct CPPFLAGS.
2011-01-16 21:32:07 -05:00
Ulrich Drepper
70181fddf1
Change setgroups to affect all the threads in the process.
2011-01-14 08:42:11 -05:00
Ulrich Drepper
a85b5cb4d4
Fix PLT use due to __libc_alloca_cutoff.
2011-01-13 14:01:56 -05:00
Ulrich Drepper
451f001b50
Handle long lines in host lookups in the right place.
2011-01-13 11:28:17 -05:00
H.J. Lu
f90681487d
Fix alignment of AVX safe area on x86-64.
2010-10-13 22:12:03 -04:00
Andreas Schwab
c3758feebf
Fix namespace pollution in pthread_cleanup_push.
2010-09-21 10:47:14 -07:00
Ulrich Drepper
4ac42e193f
Small optimization of alloca handling.
2010-09-03 04:42:44 -07:00
Dinakar Guniguntala
022f6b8920
Fix x86 pthread_cond_signal() FUTEX_WAKE_OP fallback
2010-08-19 00:46:19 -07:00
Ulrich Drepper
93f17abfb5
Fix last CL.
2010-08-16 07:03:58 -07:00
H.J. Lu
f8392f4004
Add -fno-asynchronous-unwind-tables to initfini.s for i386
2010-08-15 20:09:23 -07:00
Ulrich Drepper
bcad118178
Whitespace fixes.
2010-08-15 10:33:58 -07:00
Alan Modra
bebff237c5
PowerPC64 ABI fixes
2010-08-12 09:19:19 -07:00
Andreas Schwab
e8ee8bdf2a
Fix type mismatch
2010-07-06 08:08:46 -07:00
Ulrich Drepper
03e87550e3
Cleanup new tst-abstime program some more.
2010-07-03 14:05:02 -07:00
Ulrich Drepper
145569dc41
Improve new tst-abstime test.
2010-07-02 07:08:07 -07:00
Andreas Schwab
48b42dde17
Add missing file
2010-07-02 10:43:44 +02:00
Andreas Schwab
2983d85ee5
Work around kernel rejecting valid absolute timestamps
2010-07-01 19:07:14 -07:00
Ulrich Drepper
72b6e8c85b
Fix build with newer linker.
2010-07-01 19:03:29 -07:00
Takashi Yoshii
4bc93b3033
[sh] Fix incorrect location of ifndef for __ASSUME_FUTEX_CLOCK_REALTIME.
2010-06-14 16:56:22 -07:00
Ulrich Drepper
5d7a6541c2
Fix typo in last commit.
2010-04-09 12:29:18 -07:00
Ulrich Drepper
86a4c67fb9
Implement interfaces to set and get names of threads.
...
At least the Linux kernel provides field where the kernel originally
stores the command which is executed by the thread. The value can
subsequently be overwritten. The added functions allow to do that for
threads, providing and abstraction around the syscalls or /proc file
system accesses needed.
2010-04-09 01:09:24 -07:00
Roland McGrath
f571a994ce
Move unwind-resume code from NPTL to sysdeps/gnu.
2010-04-05 20:07:39 -07:00
Luis Machado
7749bf5fe6
Enable common version of pthread_cond_timedwait to use clock_gettime in VDSO
2010-03-24 14:46:03 -07:00
Ulrich Drepper
1d78f2996d
Fix a few more problem with the recent setxid changes.
2010-03-09 20:21:12 -08:00
Andreas Schwab
058e9ba9fd
Revert to original version of setxid race fix
2010-03-08 17:02:46 +01:00
Ulrich Drepper
66f1b8eeb2
Fix setxid race with thread creation
2010-03-05 11:23:28 -08:00
Michal Schmidt
893549c5a0
Fix pthread_cond_*wait with requeue-PI on i386.
2010-01-15 18:09:14 -08:00
Ulrich Drepper
78ee218599
Actually define and export pthread_mutexattr_[sg]etrobust.
2010-01-14 16:46:32 -08:00
Ulrich Drepper
402cd98775
Actually define pthread_mutex_consistent.
2010-01-14 15:52:46 -08:00
Ulrich Drepper
d3c7e68655
Fix up pthread.h for XPG7.
2010-01-12 12:13:04 -08:00
Ulrich Drepper
f095bb7204
Add support for XPG7 testing.
...
The header conformance testing code needed extending for XPG7. This
exposed a few bugs in the headers. There are more changes to come.
2010-01-09 10:56:41 -08:00
Thomas Schwinge
d34bd80fce
Fix s390 startup code in libpthread.
2009-12-22 08:37:33 -08:00
Ulrich Drepper
f01c2359eb
Small optimization of pthread_rwlock_init.
2009-12-17 13:49:36 -08:00
Ulrich Drepper
23b8575625
More whitespace fixes.
2009-12-13 11:52:28 -08:00
Ulrich Drepper
5a9e37df22
Fix whitespaces.
2009-12-13 11:51:54 -08:00
Dinakar Guniguntala
75956694f3
Add Requeue-PI support for x86 arch.
2009-12-13 11:50:16 -08:00
Ulrich Drepper
9554ebf2d4
Invalid timeouts in i386 sem_timedwait.
...
We adjusted nwaiters even though this isn't necessary.
2009-12-12 11:06:23 -08:00
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
fa214705b9
Once again forgot to add new test file.
2009-11-24 18:22: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
Roland McGrath
7967983fd4
configure tweaks, support $libc_add_on_config_subdirs
2009-09-15 14:14:42 -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
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
bd03a1afa2
Macro cleanup.
...
Better definition of the *_NITSET macros.
2009-07-31 22:30:30 -07:00
Ulrich Drepper
22d94a7bc9
Regenerated.
2009-07-31 21:48:59 -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
4c74e6522a
Pretty printing last change.
2009-07-18 21:41:52 -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
d9201c1365
Remove leftover cfi.
2009-07-18 13:08:21 -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
312d667b85
Consistently use symbolic constants.
2009-07-17 16:39:27 -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
Ulrich Drepper
d52c96e73a
Replace hand-coded unwind tables from x86-64 pthread_cond_wait.
2009-07-17 12:14:09 -07:00
Ulrich Drepper
bfdb73e145
Implement pthread_sigqueue.
...
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-12 08:34:02 -07:00
Bryan Kadzban
1828530f09
Fix futex syscall parameter for x86 absolute timeout waits.
...
This affects only installations compiled for kernels older than 2.6.18.
2009-06-11 11:32:51 -07:00
Ulrich Drepper
e20c4ef0ef
libc-cancellation.c cleanup.
...
The unrelated function __libc_cleanup_routine should not be in
this file. Move it into its own file.
2009-05-16 15:04:27 -07:00
Ulrich Drepper
cba0ca7925
Unify source for async cancel handling.
...
Unify all three places where we enable async cancellation for
syscalls. Optimize a bit.
2009-05-16 14:55:59 -07:00
Ulrich Drepper
a5b8b56df7
Rename nptl/init.c to nptl/nptl-init.c.
...
Needed to allow overwriting architectures init.c in csu and nptl
individually. Fixes BZ #9924 .
2009-05-16 08:57:49 -07:00
Ulrich Drepper
6dd78596d5
ChangeLog entries incorrectly applied.
2009-05-15 21:03:49 -07:00
Jakub Jelinek
1f3615a1c9
Add missing export of fallocate64 on 32-bit platforms.
...
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-15 21:00:09 -07:00
Jakub Jelinek
9e471dad8e
Don't try to cleanup libselinux and libaudit.
...
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-15 20:48:08 -07:00
Ulrich Drepper
9437b427ce
Fix change to prevent cancel signal in unsafe places.
...
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-15 20:42:36 -07:00
Ulrich Drepper
1a7f254b4b
No cancel signal in unsafe places.
...
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.
2009-05-15 19:37:12 -07:00
Jakub Jelinek
40de0fe350
Add missing CHangeLog entry.
...
2009-01-07 Ulrich Drepper <drepper@redhat.com>
* (in_flight_stack): New variable.
(stack_list_del): New function. Use instead of list_del.
(stack_list_add): New function. Use instead of list_add when adding to
stack_cache and stack_used lists.
(__reclaim_stacks): Complete operations on stack_cache and stack_used lists
when the fork call interrupted another thread.
2009-04-29 18:04:10 +00:00
Ulrich Drepper
d5c157a978
* cancellation.c (__pthread_disable_asynccancel): Use THREAD_ATOMIC_AND
...
is available.
* libc-cancellation.c (__libc_disable_asynccancel): Likewise.
* sysdeps/x86_64/tls.h: Define THREAD_ATOMIC_AND.
* sysdeps/i386/tls.h: Likewise.
(tcbhead_t): Add __private_tm member.
2009-04-27 21:55:49 +00:00
Ulrich Drepper
5efe86507d
* sem_open.c (sem_open): Rewrite initialization of initsem to
...
avoid warnings.
2009-04-26 18:37:05 +00:00
Ulrich Drepper
f521be31b9
* sysdeps/unix/sysv/linux/libc_pthread_init.c (__libc_pthread_init):
...
Avoid warning by using may_alias attribute on ptrhack.
2009-04-26 18:06:47 +00:00
Ulrich Drepper
5497de87c9
[BZ #9963 ]
...
2009-04-22 Ulrich Drepper <drepper@redhat.com>
[BZ #9963 ]
* locales/en_PH: Fix LC_PAPER.
* locales/es_CL: Likewise.
* locales/es_CO: Likewise.
* locales/es_MX: Likewise.
* locales/es_US: Likewise.
* locales/es_VE: Likewise.
* locales/fil_PH: Likewise.
* locales/ik_CA: Likewise.
* locales/iu_CA: Likewise.
* locales/tl_PH: Likewise.
2009-04-23 04:30:42 +00:00
Ulrich Drepper
d301a6e167
* pthread_attr_setschedparam.c (__pthread_attr_setschedparam):
...
Check policy and priority for validity.
Patch mostly by Zhang Xiliang <zhangxiliang@cn.fujitsu.com>.
2009-04-23 02:29:18 +00:00
Ulrich Drepper
71a5bd3e17
[BZ #5807 ]
...
2009-03-15 Ulrich Drepper <drepper@redhat.com>
[BZ #5807 ]
* string/strlen.c (strlen): Fix omission in the expression to test
for NUL bytes.
2009-03-15 09:03:38 +00:00
Ulrich Drepper
30991b8bd9
* init.c (nptl_freeres): Compile only for SHARED.
2009-03-10 22:03:24 +00:00
Jakub Jelinek
9920a6b8db
* sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Define
...
FUTEX_WAIT_BITSET, FUTEX_WAKE_BITSET, FUTEX_CLOCK_REALTIME and
FUTEX_BITSET_MATCH_ANY.
2009-03-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Define
FUTEX_WAIT_BITSET, FUTEX_WAKE_BITSET, FUTEX_CLOCK_REALTIME and
FUTEX_BITSET_MATCH_ANY.
2009-03-09 14:19:53 +00:00
Roland McGrath
e965d5147e
* Makeconfig (%.v.i): Depend on Makeconfig.
...
Exclude % lines from initial #-comment removal.
2009-02-28 02:26:51 +00:00
Ulrich Drepper
6cbe890a9d
* wctype/wctype.h: The *_l functions are in POSIX 2008.
...
* wcsmbs/wchar.h: mbsnrtowcs, open_wmemstream, wcpcpy, wcpncpy,
wcscasecmp, wcsdup, wcsncasecmp, wcsnlen, wcsnrtombs,
wcscasecmp_l, wcsncasecmp_l, wcscoll_l, and wcsxfrm_l.
* sysdeps/mach/hurd/bits/posix_opt.h: Reset value of macros from
200112L to 200809L.
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
* posix/getconf.c (vars): Add _SC_THREAD_ROBUST_PRIO_INHERIT and
_SC_THREAD_ROBUST_PRIO_PROTECT entries.
* bits/confname.h: Add _SC_THREAD_ROBUST_PRIO_INHERIT and
_SC_THREAD_ROBUST_PRIO_PROTECT.
* posix/unistd.h: fexecve is in POSIX 2008.
* time/time.h: strftime_l is in POSIX 2008.
* io/sys/stat.h: futimens is in POSIX 2008.
* string/strings.h: strcasecmp_l and strncasecmp_l are in POSIX 2008.
* string/string.h: stpcpy, stpncpy, strndup, strnlen, strsignal,
strcoll_l, strerror_l, and strxfrm_l are in POSIX 2008.
* stdlib/stdlib.h: mkdtemp is in POSIX 2008.
2009-02-26 16:53:30 +00:00
Ulrich Drepper
1f04d00542
* locale/langinfo.h: nl_langinfo_l is in POSIX 2008.
...
* locale/xlocale.h: Define locale_t type.
* locale/locale.h: duplocale, freelocale, newlocale, uselocale are
in POSIX 2008. Don't define locale_t here.
* stdlib/monetary.h: strfmon_l is in POSIX 2008.
* signal/signal.h: Declare psignal and psiginfo for POSIX 2008.
* stdio-common/psiginfo.c: New file.
* stdio-common/psiginfo-data.h: New file.
* stdio-common/psiginfo-define.h: New file.
* stdio-common/Makefile (routines): Add psiginfo.
* stdio-common/Versions: Export psiginfo for GLIBC_2.10.
2009-02-26 06:18:24 +00:00
Ulrich Drepper
77db439eaf
* ctype/ctype.h: The *_l functions are in POSIX 2008.
...
* dirent/dirent.h: alphasort, dirfd, scandir, and fdopendir are in
POSIX 2008.
/proc/sys/kernel/rtsig_max doesn't exist anymore, use getrlimit
2009-02-26 02:23:50 +00:00
Ulrich Drepper
5be0a68819
* sysdeps/unix/sysv/linux/sysconf.c (__sysconf):
...
/proc/sys/kenrel/rtsig_max doesn't exist anymore, use getrlimit
instead.
2009-02-24 23:34:08 +00:00
Ulrich Drepper
8c4a5f4214
* io/sys/stat.h: The lstat functions have been mandatory since 2001.
2009-02-24 22:47:58 +00:00
Ulrich Drepper
4c869eb67e
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Define
...
LOAD_FUTEX_WAIT_ABS even if (FUTEX_WAIT == 0).
2009-02-13 23:36:40 +00:00
Ulrich Drepper
7f901dd7ca
* sysdeps/pthread/unwind-forcedunwind.c: Encrypt all function
...
pointer variables.
2009-01-29 20:52:36 +00:00
Ulrich Drepper
cca50323b6
* allocatestack.c (__free_stacks): Renamed from free_stacks.
...
(__free_stack_cache): Removed. Change callers to call __free_stacks.
* init.c (nptl_freeres): New function.
(pthread_functions): Initialize ptr_freeres to nptl_freeres.
* pthreadP.h: Don't declare __free_stack_cache. Declare __free_stacks.
* sysdeps/pthread/unwind-forcedunwind.c (libgcc_s_handle): New
variable.
(pthread_cancel_init): Depend in libgcc_s_handle for decision to
load DSO. Assign last.
(__unwind_freeres): New function.
* allocatestack.c (__reclaim_stacks): Reset in_flight_stack later
for better debugging. No need to use stack_list_add here.
2009-01-29 20:38:04 +00:00
Ulrich Drepper
a7bd183ffe
* sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL):
...
Add "t" to clobber list.
(INTERNAL_SYSCALL_NCS): Likewise.
2009-01-28 16:11:36 +00:00
Ulrich Drepper
563ee1cb34
* pthread_mutex_lock.c (__pthread_mutex_lock): Remove unused label out.
2009-01-25 17:58:06 +00:00
Ulrich Drepper
f25c7b087f
* sysdeps/pthread/list.h (list_add): Initialize new element first.
...
(list_add_tail): Removed.
2009-01-08 18:32:16 +00:00
Ulrich Drepper
df9293cb16
* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Check and
...
adjust the buffer alignment.
2009-01-08 00:03:29 +00:00
Ulrich Drepper
5846e22fbf
(in_flight_stack): New variable. (stack_list_del): New function. Use instead of list_del. (stack_list_add): New function. Use instead of list_add when adding to stack_cache and stack_used lists. (__reclaim_stacks): Complete operations on stack_cache and stack_used lists when the fork call interrupted another thread.
2009-01-07 23:45:39 +00:00
Ulrich Drepper
3c612057ae
* init.c (__pthread_initialize_minimal_internal): Optimize test
...
FUTEX_CLOCK_REALTIME a bit.
2009-01-04 18:10:04 +00:00
Ulrich Drepper
a9fa090b02
(__lll_timedlock_wait): Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIME
...
Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIME instead of computing
2009-01-03 23:18:50 +00:00
Ulrich Drepper
19834b42f6
* init.c (__pthread_initialize_minimal_internal): Cheat a bit by
...
only passing five parameters to FUTEX_WAIT_BITSET call.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
(__lll_timedlock_wait): Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_READTIME
instead of computing relative timeout.
2009-01-03 23:18:34 +00:00
Ulrich Drepper
45f7760695
(__lll_timedlock_wait): Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_READTIME instead of computing relative timeout.
2009-01-03 23:17:21 +00:00
Ulrich Drepper
b2bcd249bf
* sysdeps/unix/sysv/linux/i386/sysdep.h: Describe 6th argument
...
handling.
2009-01-03 20:36:44 +00:00
Ulrich Drepper
cbd8aeb836
* init.c (__pthread_initialize_minimal_internal): Check for
...
FUTEX_CLOCK_REALTIME flag.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S (__lll_timedlock_wait):
Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_READTIME instead of computing
relative timeout.
2009-01-03 05:06:46 +00:00
Ulrich Drepper
7dd650d7fc
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Define
...
FUTEX_CLOCK_REALTIME and FUTEX_BITSET_MATCH_ANY.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/s390/lowlevellock.h: Likewise.
2009-01-03 03:45:07 +00:00
Ulrich Drepper
217d45cd35
* sysdeps/x86_64/bits/select.h: New file.
2008-12-29 20:16:11 +00:00
Ulrich Drepper
6de79a4991
* pthread_mutex_lock.c (__pthread_mutex_lock): Handle only the
...
fast path here, for robust/PI/PP mutexes call
__pthread_mutex_lock_full. Don't use switch, instead use a series
of ifs according to their probability.
(__pthread_mutex_lock_full): New function.
* pthread_mutex_unlock.c: Include assert.h.
(__pthread_mutex_unlock_usercnt): Handle only the
fast path here, for robust/PI/PP mutexes call
__pthread_mutex_unlock_full. Don't use switch, instead use a series
of ifs according to their probability.
(__pthread_mutex_unlock_full): New function.
* sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c
(__pthread_mutex_lock_full): Define.
2008-12-12 18:46:28 +00:00
Ulrich Drepper
135460f45c
[BZ #6545 ]
...
* sysdeps/unix/sysv/linux/bits/socket.h (SCM_CREDENTIALS): Make
available only for __USE_GNU.
2008-12-09 23:25:02 +00:00
Ulrich Drepper
71bb26394a
* sysdeps/x86_64/tls.h (tcbhead_t): Add fields reserved for TM
...
implementation. Add necessary padding and.
* descr.h (struct pthread): Increase padding for tcbhead_t to 24
words.
2008-12-08 23:30:25 +00:00
Ulrich Drepper
9e9b8cb84e
(struct pthread): Increase padding for tcbhead_t to 24 words.
2008-12-08 23:25:14 +00:00
Jakub Jelinek
d43b8bddb1
Move 2 ChangeLog entries to correct ChangeLog.
...
2008-11-24 Arkadiusz Miśkiewicz <arekm@maven.pl>
* sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Use LOAD_PIC_REG
instead of doing things manually.
2008-11-26 Chris Steel <chris.steel.lnx@googlemail.com>
* posix/regex_internal.h (build_wcs_upper_buffer):
Return type is reg_error_t.
2008-12-08 11:32:58 +00:00
Ulrich Drepper
71885b7a91
* sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Use LOAD_PIC_REG
...
instead of doing things manually.
2008-12-06 00:15:34 +00:00
Ulrich Drepper
261d16fece
* posix/regex_internal.h (build_wcs_upper_buffer):
...
Return type is reg_error_t.
2008-12-06 00:13:04 +00:00
Ulrich Drepper
247626f37e
* sysdeps/unix/sysv/linux/sh/lowlevellock.h: Define FUTEX_WAIT_BITSET
...
and FUTEX_WAKE_BITSET.
2008-12-05 22:05:24 +00:00
Ulrich Drepper
da5ac1352d
* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname3_r): Recognize
...
ESRCH return value.
(_nss_dns_gethostbyname4_r): Likewise.
* resolv/res_init.c (__res_vinit): Initialize nscount to zero.
* sysdeps/posix/getaddrinfo.c (gaih_inet): In case we use
gethostbyname4_r, we don't have a separate IPv6 status, so copy
the no_data variable.
2008-12-03 07:30:39 +00:00
Roland McGrath
c0439b95b8
Moved alpha to ports repository.
...
2008-11-25 Roland McGrath <roland@redhat.com>
* sysdeps/alpha, sysdeps/unix/bsd/osf/alpha,
sysdeps/unix/bsd/Attic/osf1/alpha, sysdeps/unix/sysv/linux/alpha,
sysdeps/unix/sysv/linux/alpha/alpha, sysdeps/unix/alpha,
sysdeps/mach/alpha, sysdeps/mach/hurd/alpha:
Subdirectories moved to ports repository.
* configure.in (base_machine): Remove alpha case.
2008-11-26 07:26:32 +00:00
Ulrich Drepper
0e54a7250f
[BZ #7009 ]
2008-11-12 13:41:14 +00:00
Jakub Jelinek
4b23f9bda3
* bits/libc-tsd.h (__libc_tsd_define, __libc_tsd_address,
...
__libc_tsd_get, __libc_tsd_set): Add TYPE argument, use it as the type
of the thread variable instead of void *.
* sysdeps/mach/hurd/bits/libc-tsd.h (__libc_tsd_define,
__libc_tsd_address, __libc_tsd_get, __libc_tsd_set): Likewise.
* include/ctype.h (CTYPE_B, CTYPE_TOUPPER, CTYPE_TOLOWER): Adjust
__libc_tsd_define arguments.
(__ctype_b_loc, __ctype_toupper_loc, __ctype_tolower_loc): Adjust
__libc_tsd_address arguments. Remove union hack.
* include/rpc/rpc.h (RPC_VARS): Adjust __libc_tsd_define arguments.
* sunrpc/rpc_thread.c (RPC_VARS): Likewise.
(__rpc_thread_destroy, rpc_thread_multi, __rpc_thread_variables):
Adjust __libc_tsd_{set,get} arguments.
* ctype/ctype-info.c (CTYPE_B, CTYPE_TOUPPER, CTYPE_TOLOWER): Adjust
__libc_tsd_define arguments.
* locale/uselocale.c (__uselocale): Adjust __libc_tsd_{set,get}
arguments.
* locale/lc-ctype.c (_nl_postload_ctype): Likewise.
* locale/global-locale.c (__libc_tsd_LOCALE): Adjust type.
(LOCALE): Adjust __libc_tsd_define arguments.
* locale/localeinfo.h (_NL_CURRENT_LOCALE): Adjust __libc_tsd_get
arguments.
(LOCALE): Adjust __libc_tsd_define arguments.
* sysdeps/mach/hurd/malloc-machine.h (MALLOC): Adjust __libc_tsd_define
arguments.
(tsd_setspecific, tsd_getspecific): Adjust __libc_tsd_{set,get}
arguments. nptl/
* sysdeps/pthread/malloc-machine.h (MALLOC): Adjust __libc_tsd_define
arguments.
(tsd_setspecific, tsd_getspecific): Adjust __libc_tsd_{set,get}
arguments.
2008-11-07 Jakub Jelinek <jakub@redhat.com>
* bits/libc-tsd.h (__libc_tsd_define, __libc_tsd_address,
__libc_tsd_get, __libc_tsd_set): Add TYPE argument, use it as the type
of the thread variable instead of void *.
* sysdeps/mach/hurd/bits/libc-tsd.h (__libc_tsd_define,
__libc_tsd_address, __libc_tsd_get, __libc_tsd_set): Likewise.
* include/ctype.h (CTYPE_B, CTYPE_TOUPPER, CTYPE_TOLOWER): Adjust
__libc_tsd_define arguments.
(__ctype_b_loc, __ctype_toupper_loc, __ctype_tolower_loc): Adjust
__libc_tsd_address arguments. Remove union hack.
* include/rpc/rpc.h (RPC_VARS): Adjust __libc_tsd_define arguments.
* sunrpc/rpc_thread.c (RPC_VARS): Likewise.
(__rpc_thread_destroy, rpc_thread_multi, __rpc_thread_variables):
Adjust __libc_tsd_{set,get} arguments.
* ctype/ctype-info.c (CTYPE_B, CTYPE_TOUPPER, CTYPE_TOLOWER): Adjust
__libc_tsd_define arguments.
* locale/uselocale.c (__uselocale): Adjust __libc_tsd_{set,get}
arguments.
* locale/lc-ctype.c (_nl_postload_ctype): Likewise.
* locale/global-locale.c (__libc_tsd_LOCALE): Adjust type.
(LOCALE): Adjust __libc_tsd_define arguments.
* locale/localeinfo.h (_NL_CURRENT_LOCALE): Adjust __libc_tsd_get
arguments.
(LOCALE): Adjust __libc_tsd_define arguments.
* sysdeps/mach/hurd/malloc-machine.h (MALLOC): Adjust __libc_tsd_define
arguments.
(tsd_setspecific, tsd_getspecific): Adjust __libc_tsd_{set,get}
arguments.
2008-11-07 15:07:10 +00:00
Ulrich Drepper
efac1fce62
[BZ #6955 ]
...
2008-11-01 Ulrich Drepper <drepper@redhat.com>
[BZ #6955 ]
* pthread_mutex_lock.c: Add support for private PI mutexes.
* pthread_mutex_timedlock.c: Likewise.
* pthread_mutex_trylock.c: Likewise.
* pthread_mutex_unlock.c: Likewise.
Patch mostly by Ben Jackson <ben@ben.com>.
2008-11-01 19:51:41 +00:00
Ulrich Drepper
bf837fa36f
[BZ #6843 ]
...
2008-10-31 Ulrich Drepper <drepper@redhat.com>
[BZ #6843 ]
* sysdeps/pthread/gai_misc.h (__gai_create_helper_thread):
Increase stack size for helper thread.
2008-11-01 00:20:07 +00:00
Ulrich Drepper
208bc83670
* misc/syslog.c (openlog_internal): Fix __have_sock_cloexec
...
initialization.
2008-10-22 21:45:13 +00:00
Ulrich Drepper
17f8b4a955
.
2008-10-06 16:48:17 +00:00
Ulrich Drepper
af62b44029
* sysdeps/unix/sysv/linux/fork.c (__libc_fork): Add memory barrier
...
to force runp->refcntr to be read from memory.
2008-10-06 16:47:10 +00:00
Andreas Jaeger
2458c74851
* sysdeps/unix/sysv/linux/i386/lowlevellock.h (lll_lock,
...
lll_robust_lock, lll_cond_lock, lll_robust_cond_lock,
lll_timedlock, lll_robust_timedlock, lll_unlock,
lll_robust_unlock): Promote private to int.
2008-09-08 Richard Guenther <rguenther@suse.de>
* sysdeps/unix/sysv/linux/i386/lowlevellock.h (lll_lock,
lll_robust_lock, lll_cond_lock, lll_robust_cond_lock,
lll_timedlock, lll_robust_timedlock, lll_unlock,
lll_robust_unlock): Promote private to int.
2008-09-23 18:50:28 +00:00
Ulrich Drepper
965805e888
* sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_STACK.
...
* sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
2008-08-15 22:35:53 +00:00
Ulrich Drepper
bd7f48571d
* nscd/connections.c (nscd_init): Type if preprocessor directive.
...
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PACCEPT):
Define.
2008-07-30 16:33:19 +00:00
Ulrich Drepper
7b91359b2c
* Makeconfig: Define pie-ccflag and PIE-ccflag variables.
...
* elf/Makefile: Use pie-ccflag variable.
* nscd/Makefile: Likewise.
* sysdeps/sparc/Makefile: Set $(pie-ccflag) to -fPIE.
2008-07-26 22:22:24 +00:00
Ulrich Drepper
619cc2f69d
* scripts/gen-as-const.awk: Generate more widely usable code by
...
using 64-bit arithmetic.
2008-07-26 16:35:21 +00:00
Ulrich Drepper
1311b164df
* stdio-common/printf_fp.c (___printf_fp): Give wide outout code
...
the same treatment as narow output code in last patch.
2008-07-26 16:32:59 +00:00
Ulrich Drepper
8ccf22f934
* include/rpc/clnt.h: Declare __libc_clntudp_bufcreate and
...
__libc_clntudp_bufcreate_internal.
* include/sys/socket.h: Declare __have_sock_cloexec.
* socket/Makefile (aux): Add have_sock_cloexec.
* socket/have_sock_cloexec.c: New file.
* sunrpc/clnt_udp.h (clntudp_bufcreate): Now a wrapper around
__libc_clntudp_bufcreate.
(__libc_clntudp_bufcreate): Former implementation of clntudp_bufcreate
which takes an additional parameter. Create socket with non-blocking
mode and close-on-exec flag set, if wanted.
* sunrpc/Versions: Export __libc_clntudp_bufcreate@GLIBC_PRIVATE.
* nis/ypclnt.c (yp_bind_client_create): Use __libc_clntpudp_bufcreate
instead of clntudp_create. The socket has already the close-on-exec
flag set if SOCK_CLOEXEC is defined.
2008-07-25 17:06:50 +00:00
Ulrich Drepper
5a337776da
* nscd/grpcache.c (cache_addgr): Correctly compute size of
...
fixed-size portion of the record.
* nscd/servicescache.c (cache_addserv): Likewise.
* nscd/pwdcache.c (cache_addpw): Likewise.
* nscd/initgrcache.c (addinitgroupsX): Likewise.
2008-06-12 16:16:38 +00:00
Ulrich Drepper
10bb97c793
(tests): Add tst-rwlock2a.
2008-05-31 08:56:14 +00:00
Ulrich Drepper
e4d6e7f5c0
* sysdeps/pthread/pthread.h: Fix typo in comment.
2008-05-29 14:53:01 +00:00
Ulrich Drepper
d6296e885d
* sysdeps/pthread/createthread.c (do_clone): Pass accurate length
...
of CPU set to the kernel.
2008-05-29 05:53:30 +00:00
Ulrich Drepper
7c0ad1645f
(do_clone): Pass accurate length of CPU set to the kernel.
2008-05-29 05:53:18 +00:00
Ulrich Drepper
62605cbfcb
Remove useless more "if" tests before "free".
...
* include/inline-hashtab.h (htab_delete): Likewise.
* libio/freopen.c (freopen): Likewise.
* libio/freopen64.c (freopen64): Likewise.
* locale/programs/ld-collate.c (collate_read): Likewise.
* misc/fstab.c (libc_freeres_fn): Likewise.
* posix/glob.c (globfree): Likewise.
2008-05-27 06:04:07 +00:00
Ulrich Drepper
4b2c85c0b9
* tst-typesizes.c: Explicitly check __SIZEOF_PTHREAD_* constants.
...
David S. Miller <davem@davemloft.net>
2008-05-26 17:02:55 +00:00
Jakub Jelinek
b72f5692e8
2008-05-20 Jakub Jelinek <jakub@redhat.com>
...
David S. Miller <davem@davemloft.net>
* sysdeps/unix/sysv/linux/sparc/sparc64/Makefile: New file.
2008-05-21 06:47:47 +00:00
Jakub Jelinek
3b15b590b7
* sysdeps/unix/sysv/linux/sparc/sparc64/Makefile: New file.
...
2008-05-19 Jakub Jelinek <jakub@redhat.com>
* elf/soinit.c (__EH_FRAME_BEGIN__): Remove.
2008-05-20 07:42:00 +00:00
Ulrich Drepper
cdffaaa615
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Access
...
__pshared correctly.
* 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.
Reported by Clemens Kolbitsch <clemens.kol@gmx.at>.
2008-05-11 05:42:25 +00:00
Jakub Jelinek
2313c48fa9
* sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c
...
(__old_sem_wait): Fix argument to lll_futex_wait().
2008-04-14 David S. Miller <davem@davemloft.net>
* sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c
(__old_sem_wait): Fix argument to lll_futex_wait().
2008-04-15 15:00:30 +00:00
Ulrich Drepper
2f611ada05
[BZ #5209 ]
...
* sysdeps/unix/sysv/syscalls.list: times syscalls doesn't return
an error value.
2008-04-09 18:47:07 +00:00
Ulrich Drepper
6c30d38fdd
[BZ #5436 ]
...
2008-04-09 Ulrich Drepper <drepper@redhat.com>
* stdlib/tst-makecontext.c: Change parameter to cf to negative
value to check for correct sign extension.
[BZ #5436 ]
* sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
Copy 64-bit parameter values even though this is not required in
the standard.
* sysdeps/unix/sysv/linux/x86_64/vfork.S (__vfork): Record return
PC save.
2008-04-09 18:30:12 +00:00