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
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
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
d94a467080
Add first fixes for conformtest for POSIX2008
2012-02-26 21:32:56 -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
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
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
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
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
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
Ulrich Drepper
e6c6149412
Fix memory leak in TLS of loaded objects.
2011-04-10 22:43:01 -04: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
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
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
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
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
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
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