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
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
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
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
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
Andreas Schwab
842a39cd1a
Remove unused pseudo_end label
2012-07-25 21:58:17 +02:00
Thomas Schwinge
4b2c8da708
SH: __lll_robust_timedlock_wait: Simplify CFI directives.
2012-06-23 12:17:44 +02:00
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
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
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
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
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
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
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
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
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
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
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
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
Thomas Schwinge
840df61ea4
Get rid of superfluous assignments in sem_timedwait
2012-03-07 04:11:11 -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
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
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
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
a784e50247
Remove pre-ISO C support
...
No more __const.
2012-01-07 23:57:22 -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
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
Andreas Schwab
3871f58f06
Don't mark memory synchronisation functions as leaf
2011-10-27 17:20:14 +02: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
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
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