Roland McGrath
55c11fbdb0
2003-03-14 Roland McGrath <roland@redhat.com>
...
* descr.h (struct pthread): Move the union out of [!TLS_DTV_AT_TP], so
we always define the padding space.
[!TLS_DTV_AT_TP]: Give tcbhead_t field a name, `header', since GCC
stopped supporting its own extensions fully.
[TLS_MULTIPLE_THREADS_IN_TCB]: Put `multiple_threads' inside a wrapper
struct also called `header', so `header.multiple_threads' is the field
name to use on all machines.
* allocatestack.c (allocate_stack): Use `header.' prefix.
* sysdeps/pthread/createthread.c (create_thread): Likewise.
* pthread_create.c (__pthread_create_2_1): Likewise.
* sysdeps/i386/tls.h (INSTALL_NEW_DTV, THREAD_DTV): Likewise.
(THREAD_SELF): Likewise.
* sysdeps/x86_64/tls.h: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
2003-03-14 22:34:02 +00:00
Roland McGrath
6461e57784
* elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
...
entries in the map file match too.
2003-03-13 21:51:07 +00:00
Roland McGrath
0579fabbe8
2003-03-13 Jakub Jelinek <jakub@redhat.com>
...
* sysdeps/unix/sysv/linux/fork.c (__libc_fork): Only declare and set
PPID if [! NDEBUG].
2003-03-13 21:00:18 +00:00
Ulrich Drepper
b5ec56172d
Update.
...
2003-03-13 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
(INTERNAL_SYSCALL, INLINE_SYSCALL): Use it. Make syscall arguments
clobbered by the syscall.
(ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
ASM_ARGS_6): Change constraints from r to index of corresponding
output register.
* sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
ptid and ctid to match kernel.
* sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
* sysdeps/powerpc/powerpc64/elf/configure.in: Remove
* sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
2003-03-13 04:41:39 +00:00
Ulrich Drepper
7588880f50
Update.
...
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add
libc_multiple_threads.
* sysdeps/unix/sysv/linux/libc_pthread_init.c: Move definition of
__libc_multiple_threads to...
* sysdeps/unix/sysv/linux/libc_multiple_threads.c: ...here. New file.
* sysdeps/unix/sysv/linux/x86_64/sem_post.S: Remove unnecessary
versioning.
* sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_once.S
(__pthread_once_internal): Define.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Use shlib-compat.h
macros instead of .symver directly.
* sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Likewise.
2003-03-13 01:51:12 +00:00
Ulrich Drepper
959c5bbfee
Use shlib-compat.h macros instead of .symver directly.
2003-03-13 01:06:30 +00:00
Ulrich Drepper
d0369fb8a9
Update.
...
2003-03-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/tls.h [__ASSEMBLER__]: Include tcb-offsets.h.
* sysdeps/x86_64/tcb-offsets.sym: New file.
* sysdeps/x86_64/Makefile: New file.
* sysdeps/i386/tcb-offsets.sym: Add SELF.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Use SELF
to access own pthread_t in TCB.
* 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_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S: New
file.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S: New
file.
* sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h
(pthread_cond_t): Add padding.
2003-03-12 20:03:07 +00:00
Ulrich Drepper
6aebe7340d
(pthread_cond_t): Add padding.
2003-03-12 18:44:29 +00:00
Roland McGrath
0bb2ac85a6
* pthread-errnos.sym: New file.
...
* Makefile (gen-as-const-headers): New variable, list that file.
* sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Include generated
header <pthread-errnos.h> instead of defining errno values here.
* sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_wait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/lowlevelmutex.S: Likewise.
* sysdeps/i386/i486/pthread_spin_trylock.S: Likewise.
* sysdeps/x86_64/pthread_spin_trylock.S: Likewise.
* sysdeps/sh/pthread_spin_trylock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/fork.c: Add an assert to check that
CLONE_CHILD_SETTID worked.
2003-03-12 10:30:26 +00:00
Roland McGrath
326132dbdb
2003-03-12 Roland McGrath <roland@redhat.com>
...
* pthread-errnos.sym: New file.
* Makefile (gen-as-const-headers): New variable, list that file.
* sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Include generated
header <pthread-errnos.h> instead of defining errno values here.
* sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Likewise.
* sysdeps/i386/i486/pthread_spin_trylock.S: Likewise.
* sysdeps/x86_64/pthread_spin_trylock.S: Likewise.
* sysdeps/sh/pthread_spin_trylock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise.
2003-03-12 10:28:07 +00:00
Ulrich Drepper
da49194d2d
Update.
...
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: New file.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: New file.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S: New file.
2003-03-12 09:53:44 +00:00
Ulrich Drepper
35e148cb96
Update.
...
2003-03-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S
(__pthread_rwlock_timedwrlock): Add missing opcode suffix.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S
(__pthread_rwlock_timedrdlock): Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S
(__pthread_rwlock_wrlock): Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S
(__pthread_rwlock_rdlock): Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Return
result of lock re-get if it fails.
2003-03-12 08:57:35 +00:00
Ulrich Drepper
a3cd7da30f
Return result of lock re-get if it fails.
2003-03-12 08:41:10 +00:00
Ulrich Drepper
5a03acfe37
Update.
...
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Fix asm syntax.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_once.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
* sysdeps/x86_64/tls.h (THREAD_SELF, THREAD_GETMEM, THREAD_GETMEM_NC,
THREAD_SETMEM, THREAD_SETMEM_NC): Correct asm syntax.
* allocatestack.c [! TLS_MULTIPLE_THREADS_IN_TCB] (allocate_stack):
Initialize *__libc_multiple_threads_ptr not __libc_multiple_threads.
* sysdeps/pthread/createthread.c [! TLS_MULTIPLE_THREADS_IN_TCB]
(create_thread): Likewise.
Define __pthread_multiple_threads and __libc_multiple_threads_ptr.
* init.c (__pthread_initialize_minimal_internal): Initialize
__libc_multiple_threads_ptr if necessary.
* pthreadP.h: Adjust prototype for __libc_pthread_init. Declare
__pthread_multiple_threads and __libc_multiple_threads_ptr.
* sysdeps/unix/sysv/linux/libc_pthread_init.c: Define
__libc_multiple_threads.
(__libc_pthread_init): Return pointer to __libc_pthread_init if
necessary.
* sysdeps/i386/tls.h (THREAD_SETMEM): Fix one-byte variant.
(THREAD_SETMEM_NC): Likewise.
* sysdeps/x86_64/pthread_spin_trylock.c: Removed.
* sysdeps/x86_64/pthread_spin_trylock.S: New file.
* sysdeps/x86_64/pthread_spin_unlock.c: Removed.
* sysdeps/x86_64/pthread_spin_unlock.S: New file.
* sysdeps/i386/i486/pthread_spin_trylock.S (pthread_spin_trylock):
Eliminate one entire instruction.
2003-03-12 05:45:00 +00:00
Ulrich Drepper
32a589b1ea
Update.
...
* cancellation.c (__pthread_enable_asynccancel_2): New function.
* pthreadP.h: Declare __pthread_enable_asynccancel_2.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
(__pthread_cond_timedwait): Use __pthread_enable_asynccancel_2
instead of __pthread_enable_asynccancel.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
(__pthread_cond_wait): Likewise.
* sysdeps/pthread/pthread_cond_timedwait.c
(__pthread_cond_timedwait): Likewise.
* sysdeps/pthread/pthread_cond_wait.c (__pthread_cond_wait): Likewise.
2003-03-11 23:26:35 +00:00
Ulrich Drepper
3e976b962a
Update.
...
2003-03-11 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
(__condvar_cleanup): Wake up all waiters in case we got signaled
after being woken up but before disabling asynchronous
cancellation.
* sysdeps/pthread/pthread_cond_wait.c (__condvar_cleanup): Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
(__condvar_cleanup): Likewise.
* init.c (__NR_set_tid_address): If already defined, don't redefine.
Make it an error if architecture has no #if case. Add x86-64.
* sysdeps/unix/sysv/linux/x86_64/Makefile: Add flags for
pt-initfini.s generation.
* sysdeps/x86_64/tls.h: Include <asm/prctl.h>.
(TLS_INIT_TP): Fix typo.
2003-03-11 22:02:29 +00:00
Ulrich Drepper
6c477888ca
Update.
...
2003-03-11 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
to __NR_pread if not defined.
(__NR_pwrite64): Define to __NR_pwrite if not defined.
2003-03-11 19:40:00 +00:00
Ulrich Drepper
f006d3a007
Update.
...
* sysdeps/unix/sysv/linux/ia64/system.c: New file.
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
kernel >= 2.5.64.
2003-03-11 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
2003-03-11 19:02:26 +00:00
Ulrich Drepper
0bc91edf8e
pthread_cond_wait implementation for Linux/x86-64.
2003-03-11 10:36:15 +00:00
Roland McGrath
b33e61633a
* sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
...
allocate space even for the trailing '/'.
Reported by John Reiser <jreiser@BitWagon.com>.
* sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
ASM_CLOBBERS_6): Define.
(ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
* sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
to match IA-32 order.
* sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
2003-03-11 09:30:37 +00:00
Ulrich Drepper
d0aacb47f9
pthread_cond_signal implementation for Linux/x86-64.
2003-03-11 08:31:35 +00:00
Ulrich Drepper
db5f2fc93d
Update.
...
* sysdeps/unix/sysv/linux/x86_64/sem_post.S: New file.
* sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: New file.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: New file.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Fix error value in
unused code.
2003-03-11 06:52:08 +00:00
Ulrich Drepper
6a4263e3d5
Update.
...
* sysdeps/unix/sysv/linux/x86_64/pthread_barrier_wait.S: New file
* sysdeps/unix/sysv/linux/sh/pthread_barrier_wait.S: Likewise.
2003-03-11 05:52:12 +00:00
Ulrich Drepper
3de7c2a965
Update.
...
* sysdeps/unix/sysv/linux/Makefile (gen-as-const-headers): Add
lowlevelbarrier.sym.
* sysdeps/unix/sysv/linux/lowlevelbarrier.sym: New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S:
Include lowlevelbarrier.h and don't define offsets locally.
2003-03-11 05:26:32 +00:00
Ulrich Drepper
2a544d82ce
Update.
...
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h
(__lll_mutex_lock_wait): Reverse order of first two parameters.
(__lll_mutex_timedlock_wait): Likewise.
(lll_mutex_lock): Adjust asm for that.
(lll_mutex_timedlock): Likewise. Mark cx, cc, r10 as clobbered.
(lll_lock): Adjust asm for operand order change.
* sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: New file.
* sysdeps/unix/sysv/linux/x86_64/libc-lowlevelmutex.S: New file.
2003-03-11 04:07:00 +00:00
Ulrich Drepper
ec06436c5b
Update.
...
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (__lll_lock_wait):
Reverse order of parameters.
(__lll_timedwait_tid): Remove regparms attribute.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: New file.
* sysdeps/unix/sysv/linux/x86_64/libc-lowlevellock.S: New file.
2003-03-11 01:01:24 +00:00
Ulrich Drepper
3273832c67
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
(__lll_timedwait_tid): Remove one unnecessary instruction.
2003-03-11 00:49:38 +00:00
Ulrich Drepper
51f32ab883
Update.
...
* sysdeps/unix/sysv/linux/sh/lowlevelmutex.S: Define
__lll_mutex_timedlock_wait only for NOT_IN_libc.
* sysdeps/unix/sysv/linux/sh/libc-lowlevelmutex.S: Include
lowlevelmutex.S.
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Define
lll_unlock_wake_cb, __lll_wait_tid, and __lll_timedwait_tid only
for NOT_IN_libc.
* sysdeps/unix/sysv/linux/sh/libc-lowlevellock.S: Include
lowlevellock.S.
2003-03-10 23:42:41 +00:00
Ulrich Drepper
fad48d9e2d
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Don't define
LOCK is already defined. Don't define __lll_mutex_timedlock_wait
for libc.so.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: Only
define LOCK here (if UP is not defined). The actual code is in
lowlevelmutex.S.
2003-03-10 22:27:01 +00:00
Ulrich Drepper
9356d063df
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Don't define
LOCK is already defined. Don't define lll_unlock_wake_cb and
__lll_timedwait_tid for libc.so.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Only
define LOCK here (if UP is not defined). The actual code is in
lowlevellock.S.
2003-03-10 22:11:26 +00:00
Ulrich Drepper
146fa1ee68
Update.
...
* sysdeps/unix/sysv/linux/sh/lowlevelrwlock.h: Removed.
2003-03-10 21:44:36 +00:00
Ulrich Drepper
106f6f9d9d
Update.
...
* sysdeps/unix/sysv/linux/s390/lowlevelsem.h: Likewise.
* sysdeps/unix/sysv/linux/s390/sem_post.c: Include lowlevellock.h
instead of lowlevelsem.h.
* sysdeps/unix/sysv/linux/s390/sem_timedwait.c: Likewise.
* sysdeps/unix/sysv/linux/s390/sem_trywait.c: Likewise.
* sysdeps/unix/sysv/linux/s390/sem_wait.c: Likewise.
2003-03-10 21:42:52 +00:00
Ulrich Drepper
873010c8a4
Not needed at all.
2003-03-10 21:31:55 +00:00
Ulrich Drepper
c915e5ad56
Update.
...
* sysdeps/unix/sysv/linux/Makefile (gen-as-const-headers): Add
lowlevelrwlock.sym.
* sysdeps/unix/sysv/linux/lowlevelrwlock.sym: New file.
* sysdeps/unix/sysv/linux/i386/lowlevelrwlock.h: Removed.
2003-03-10 21:03:03 +00:00
Ulrich Drepper
4c3c2e8a6e
Update.
...
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_trylock): Fix
register loading.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h (lll_trylock): Undo
last changed. D'oh.
2003-03-10 19:37:46 +00:00
Ulrich Drepper
8969b769c0
(lll_trylock): Undo last changed. D'oh.
2003-03-10 19:36:23 +00:00
Ulrich Drepper
f49d640711
Lowlevel lock definitions for x86-64/Linux.
2003-03-10 09:26:20 +00:00
Ulrich Drepper
9921a88000
(lll_trylock): Initialize %eax to zero.
2003-03-10 09:10:30 +00:00
Ulrich Drepper
acdcbad953
Remove declaration of __libc_locking_needed.
2003-03-10 09:00:47 +00:00
Ulrich Drepper
4cf82237a1
(lll_trylock): Initialize %eax to zero.
2003-03-10 08:51:08 +00:00
Roland McGrath
d4f64e1ad7
2003-03-10 Roland McGrath <roland@redhat.com>
...
* allocatestack.c (allocate_stack) [!TLS_MULTIPLE_THREADS_IN_TCB]:
Instead of setting PD->multiple_threads, set globals
__pthread_multiple_threads and __libc_multiple_threads.
* sysdeps/pthread/createthread.c (create_thread): Likewise.
* sysdeps/i386/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Define it.
* sysdeps/s390/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Likewise.
* descr.h (struct pthread): Conditionalize first member on
[!TLS_DTV_AT_TP]. Replace the `header' member with an anonymous union
containing an anonymous tcbhead_t. Move `list' member out.
[TLS_MULTIPLE_THREADS_IN_TCB]: Define a `multiple_threads' member.
* allocatestack.c: Remove use of `header.data.' prefix.
* pthread_create.c: Likewise.
* init.c (__pthread_initialize_minimal_internal): Likewise.
* sysdeps/pthread/createthread.c (create_thread): Likewise.
* sysdeps/i386/tls.h (INSTALL_DTV): Add parens.
(THREAD_SELF, THREAD_DTV, INSTALL_NEW_DTV): No `header.data.' prefix.
* sysdeps/x86_64/tls.h: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
* sysdeps/i386/tls.h (tcbhead_t): Remove `list' member.
* sysdeps/s390/tls.h (tcbhead_t): Likewise.
2003-03-10 08:50:36 +00:00
Roland McGrath
f9cd7dfd6b
2003-03-10 Roland McGrath <roland@redhat.com>
...
* sysdeps/unix/sysv/linux/lowlevelcond.sym: New file.
* sysdeps/unix/sysv/linux/Makefile (gen-as-const-headers): Add it.
* sysdeps/unix/sysv/linux/sh/lowlevelcond.h: File removed.
* sysdeps/unix/sysv/linux/i386/lowlevelcond.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevelcond.h: Likewise.
2003-03-10 08:50:26 +00:00
Ulrich Drepper
48f3314a00
Definitions for condvar implementation on Linux/x86-64.
2003-03-10 08:06:20 +00:00
Ulrich Drepper
7b44a5e0a7
Update.
...
* sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h: New file.
2003-03-10 08:00:02 +00:00
Ulrich Drepper
c2e5e08573
Update.
...
* sysdeps/unix/sysv/linux/x86_64/pthread_once.S: Fix many
leftovers from the ia32 code.
* sysdeps/unix/sysv/linux/i386/pthread_once.S: Remove unneccessary
memory load.
(clear_once_control): Don't load %esi.
* sysdeps/x86_64/tls.h: Remove all traces of segment descriptor
handling.
* sysdeps/unix/sysv/linux/x86_64/fork.c: New file.
2003-03-10 07:39:55 +00:00
Ulrich Drepper
cd4b2a553a
Update.
...
* sysdeps/unix/sysv/linux/s390/createthread.c: Moved to...
* sysdeps/unix/sysv/linux/createthread.c: ...here.
2003-03-10 06:32:42 +00:00
Ulrich Drepper
ccf1d5737a
Update.
...
* tst-tls2.c (do_test): Add TEMP_FAILURE_RETRY around sem_wait call.
* tst-signal3.c (do_test): Likewise.
* tst-sem5.c (do_test): Likewise.
* tst-kill6.c (do_test): Likewise.
* tst-tls3.c (do_test): Likewise. Include <errno.h>.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Use add/sub instead
of inc/dec.
* sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Likewise.
* sysdeps/unix/sysv/linux/i386/pthread_once.S: Likewise
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
2003-03-08 10:30:42 +00:00
Ulrich Drepper
41d4d22399
Update.
...
* sysdeps/i386/i486/bits/atomic.h: Fix a few unused definitions.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Remove all trace of
lll_wake_tid. This was used only to work around kernel limits in
the early days.
* sysdeps/unix/sysv/linux/s390/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/sh/libc-lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/lowlevellock.h: Likewise.
2003-03-07 18:37:10 +00:00
Ulrich Drepper
181c92c2e6
Update.
2003-03-07 05:32:16 +00:00
Ulrich Drepper
0de28d5c71
Update.
...
2003-03-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
2003-03-04 23:01:30 +00:00
Ulrich Drepper
f04a27210a
Update.
...
* sysdeps/unix/sysv/linux/s390/dl-sysdep.h: Removed. The generic
version is just fine.
2003-03-04 07:58:19 +00:00
Ulrich Drepper
4f6f0a8fcf
Update.
...
2003-03-03 Ulrich Drepper <drepper@redhat.com>
* include/sched.h (__clone2): Use ... instead of adding all the
new parameters.
2003-03-03 22:02:13 +00:00
Ulrich Drepper
7ce5c1640c
Update.
...
2003-03-03 Martin Schwidefsky <schwidefsky@de.ibm.com>
* atomic.h (atomic_exchange_and_add): Return newval, not oldval.
* sysdeps/pthread/pthread_cond_timedwait.c (__pthread_cond_timedwait):
Fix handling of cancellation and failing pthread_mutex_unlock call.
* sysdeps/pthread/pthread_cond_wait.c (__condvar_cleanup): Likewise.
(__pthread_cond_wait): Likewise.
* sysdeps/pthread/pthread_rwlock_timedrdlock.c
(pthread_rwlock_timedrdlock): Fix clobber of result variable by
lll_futex_timed_wait call.
* sysdeps/pthread/pthread_rwlock_timedwrlock.c
(pthread_rwlock_timedwrlock): Likewise.
* sysdeps/unix/sysv/linux/s390/libc-lowlevellock.c (___lll_lock):
Don't define lll_unlock_wake_cb and ___lll_timedwait_tid in libc.so.
* sysdeps/unix/sysv/linux/s390/lowlevellock.c: Remove XXX comments.
* sysdeps/unix/sysv/linux/s390/sem_post.c (__new_sem_post): Fix
check of lll_futex_wake return value.
2003-03-03 21:11:12 +00:00
Roland McGrath
ea6a015bd7
* sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
...
* sysdeps/ia64/dl-machine.h: Update decl.
2003-03-03 08:44:46 +00:00
Ulrich Drepper
e5497892bb
Update.
...
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
2003-03-03 05:00:33 +00:00
Ulrich Drepper
816a5a6a69
Typo in comment.
2003-03-02 08:44:23 +00:00
Ulrich Drepper
748bec0865
Update.
...
* sysdeps/i386/tcb-offsets.sym: Add CLEANUP and CLEANUP_PREV.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Inline
__pthread_cleanup_pop functionality.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
2003-03-02 07:52:31 +00:00
Ulrich Drepper
bd8bb78ba2
Update.
...
2003-03-01 Ulrich Drepper <drepper@redhat.com>
* descr.h (struct pthread): Move tid field to the front now that
it is often used.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S
(__lll_mutex_timedlock_wait): Remove.
(__lll_mutex_unlock_wake): Don't save, load, and restore %esi.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S
(__lll_mutex_unlock_wake): Don't save, load, and restore %esi.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
(lll_unlock_wake_cb): Don't save and restore %esi.
(__lll_unlock_wake): Add alignment. Don't save, load, and restore
%esi.
(__lll_timedwait_tid): Add alignment.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S
(__lll_unlock_wake): Add alignment. Don't save, load, and restore
%esi.
(__lll_timedwait_tid): Removed.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S
(__pthread_cond_broadcast): Don't save, load, and restore %esi.
* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S
(pthread_barrier_wait): Don't save, load, and restore %esi for
last thread.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S
(__pthread_cond_signal): Don't save, load, and restore %esi.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S
(__pthread_rwlock_unlock): Don't save, load, and restore %esi.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S (__new_sem_post):
Don't save, load, and restore %esi.
2003-03-01 09:45:23 +00:00
Ulrich Drepper
206a5cdea2
Update.
2003-02-28 03:47:32 +00:00
Ulrich Drepper
567fb22ae3
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S:
Release lock before waking up the waiters.
2003-02-27 23:45:12 +00:00
Ulrich Drepper
d2637c7053
Update.
...
2003-02-24 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
unwind info.
2003-02-27 10:32:38 +00:00
Ulrich Drepper
18a535792b
Update.
...
* sysdeps/pthread/pthread_rwlock_rdlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_timedrdlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_timedwrlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_unlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_wrlock.c: Likewise.
2003-02-24 09:23:15 +00:00
Ulrich Drepper
b1b8e747d4
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Shave
off 3 more bytes by using offset-less instructions when possible.
2003-02-23 07:20:34 +00:00
Ulrich Drepper
e814f74891
Update.
...
* pthread_cancel.c (pthread_cancel): Use tkill directly.
* sysdeps/unix/sysv/linux/pthread_kill.c (__pthread_kill):
Disallow sending SIGCANCEL.
tst-kill3, tst-kill4, tst-kill5.
* tst-kill1.c: New file.
* tst-kill2.c: New file.
* tst-kill3.c: New file.
* tst-kill5.c: New file.
* tst-basic7.c: Renamed to...
* tst-kill4.c: ...this.
2003-02-21 21:07:28 +00:00
Ulrich Drepper
8c2e9a29b1
Update.
...
* pthreadP.h: Define INVALID_TD_P and INVALID_NOT_TERMINATED_TD_P.
* pthread_cancel.c: Use INVALID_TD_P.
* pthread_detach.c: Likewise.
* pthread_getschedparam.c: Likewise.
* pthread_setschedparam.c: Likewise.
* sysdeps/pthread/pthread_getcpuclockid.c: Likewise.
* sysdeps/unix/sysv/linux/pthread_kill.c: Likewise.
* pthread_join.c: Use INVALID_NOT_TERMINATED_TD_P.
* pthread_timedjoin.c: Likewise.
* tst-basic7.c: Include <signal.h>.
2003-02-21 10:00:33 +00:00
Ulrich Drepper
2f7dc59492
Update.
...
2003-02-18 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
invalid file descriptors and missing access permissions.
2003-02-18 21:04:15 +00:00
Ulrich Drepper
b0db7fbeef
Update.
...
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Remnove
_POSIX_THREAD_PRIORITY_SCHEDULING.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Remove
_XOPEN_REALTIME_THREADS.
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
* sysdeps/unix/sysv/linux/pthread_kill.c (__pthread_kill): The
kernel returns EINVAL for PID <= 0, work around it.
2003-02-18 06:33:08 +00:00
Ulrich Drepper
46d7e2ba22
Update.
...
2003-02-17 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
TTY_NAME_MAX and not the _POSIX_* minimal value macros.
* sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
and LOGIN_NAME_MAX.
2003-02-18 03:46:54 +00:00
Ulrich Drepper
7d78ab990f
Update.
...
* sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
and LOGIN_NAME_MAX.
2003-02-17 22:57:19 +00:00
Ulrich Drepper
0a37669aa5
Update.
...
* tst-rwlock6.c: More pthread_rwlock_timedwrlock and
pthread_rwlock_timedrdlock tests.
* tst-rwlock7.c: More pthread_rwlock_timedwrlock tests.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S:
Check for invalid tv_nsec field.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S:
Likewise.
* pthread_mutex_trylock.c (__pthread_mutex_trylock): Protect
recursive mutex of overflow.
* tst-attr1.c (do_test): Add test for pthread_mutexattr_setpshared.
2003-02-16 10:57:38 +00:00
Ulrich Drepper
e798b60fe4
Update.
...
* sysdeps/unix/sysv/linux/pthread_kill.c (__pthread_kill): Don't
use INLINE_SYSCALL. Error number is returned, not -1.
2003-02-15 10:11:42 +00:00
Ulrich Drepper
dac0f77234
Update.
...
2003-02-13 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
subtracting map->l_tls_offset.
2003-02-14 06:11:21 +00:00
Ulrich Drepper
a7720b5e18
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Fix
handling of cancellation and failung pthread_mutex_unlock call.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
* Makefile (tests): Add tst-cond8 and tst-cond9.
* tst-cond8.c: New file.
* tst-cond9.c: New file.
2003-02-14 03:26:28 +00:00
Ulrich Drepper
a1ea4c0638
Update.
...
* tst-cond7.c (do_test): Unlock the mutex before canceling the thread.
* sysdeps/pthread/pthread.h: Add missing initializers. Protect
non-standard initializers with __USE_GNU.
2003-02-14 01:12:02 +00:00
Ulrich Drepper
dfdd294a2a
Update.
...
* Makefile: Add rules to build and run tst-atfork2 test.
* tst-atfork2.c: New file.
* tst-atfork2mod.c: New file.
* sysdeps/unix/sysv/linux/unregister-atfork.c
(__unregister_atfork): Free the memory allocated for the handlers
after removing them from the lists.
* sysdeps/unix/sysv/linux/register-atfork.c: Define memeory
cleanup function.
* tst-atfork1.c (do_test): Wait for the child we forked.
Report error in child.
* sysdeps/unix/sysv/linux/fork.c (__libc_fork): Fix comment.
2003-02-13 07:14:38 +00:00
Ulrich Drepper
defd18709c
Update.
...
* Makefile (tests): Add tst-once3 and tst-once4.
* tst-once4.c: New file.
2003-02-10 23:43:49 +00:00
Ulrich Drepper
2a8a8a8461
Update.
...
2003-02-10 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/pthread_once.S (clear_once_control): Fix
clearing of control variable.
* Makefile (tests): Add tst-once3.
* tst-once3.c: New file.
2003-02-10 23:11:15 +00:00
Ulrich Drepper
a54e8d33d1
Update.
...
2003-02-08 kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/Makefile: New file.
* sysdeps/sh/bits/atomic.h: New file.
* sysdeps/sh/pthread_spin_init.c: New file.
* sysdeps/sh/pthread_spin_lock.c: New file.
* sysdeps/sh/pthread_spin_trylock.S: New file.
* sysdeps/sh/pthread_spin_unlock.S: New file.
* sysdeps/sh/pthreaddef.h: New file.
* sysdeps/sh/tcb-offsets.sym: New file.
* sysdeps/sh/td_ta_map_lwp2thr.c: New file.
* sysdeps/sh/tls.h: New file.
* sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: New file.
* sysdeps/unix/sysv/linux/sh/bits/semaphore.h: New file.
* sysdeps/unix/sysv/linux/sh/createthread.c: New file.
* sysdeps/unix/sysv/linux/sh/fork.c: New file.
* sysdeps/unix/sysv/linux/sh/libc-lowlevellock.S: New file.
* sysdeps/unix/sysv/linux/sh/libc-lowlevelmutex.S: New file.
* sysdeps/unix/sysv/linux/sh/lowlevel-atomic.h: New file.
* sysdeps/unix/sysv/linux/sh/lowlevelcond.h: New file.
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: New file.
* sysdeps/unix/sysv/linux/sh/lowlevellock.h: New file.
* sysdeps/unix/sysv/linux/sh/lowlevelmutex.S: New file.
* sysdeps/unix/sysv/linux/sh/lowlevelrwlock.h: New file.
* sysdeps/unix/sysv/linux/sh/pt-initfini.c: New file.
* sysdeps/unix/sysv/linux/sh/pt-vfork.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_barrier_wait.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_cond_broadcast.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_cond_signal.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_once.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_unlock.S: New file.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S: New file.
* sysdeps/unix/sysv/linux/sh/sem_post.S: New file.
* sysdeps/unix/sysv/linux/sh/sem_timedwait.S: New file.
* sysdeps/unix/sysv/linux/sh/sem_trywait.S: New file.
* sysdeps/unix/sysv/linux/sh/sem_wait.S: New file.
* sysdeps/unix/sysv/linux/sh/sysdep-cancel.h: New file.
2003-02-10 09:24:12 +00:00
Ulrich Drepper
ce96c93de5
Update.
...
2002-11-24 Robert Love <rml@tech9.net>
* posix/sched.h: Second parameter of sched_setaffinity and
sched_getaffinity is `unsigned int', not `unsigned long'.
* sysdeps/generic/sched_setaffinity.c: Likewise.
* sysdeps/generic/sched_getaffinity.c: Likewise.
Reported by John Levon <levon@movementarian.org>.
2003-02-06 19:15:14 +00:00
Ulrich Drepper
11090a992d
Update.
...
2003-02-06 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Remove wrong
but inactive generalization.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: Likewise.
Minor optimization, remove one instruction.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: Likewise.
2003-02-06 08:38:56 +00:00
Ulrich Drepper
a88c926368
Update.
...
2003-02-05 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/libc-lock.h (__libc_once): Set control
variable for non-libpthread case to the same value the
pthread_once function would use.
2003-02-05 09:54:24 +00:00
Ulrich Drepper
2f42e8be4c
Update.
...
2003-02-02 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
(__lll_lock_wait): Add branch predicition.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S
(__lll_lock_wait): Likewise.
(lll_unlock_wake_cb): Removed.
2003-02-03 03:51:24 +00:00
Ulrich Drepper
4a7d6545ce
Update.
...
2003-01-31 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Remove
_POSIX_THREAD_PRIORITY_SCHEDULING.
2003-02-01 03:26:11 +00:00
Ulrich Drepper
6cf26f4168
Update.
...
* Makefile (libpthread-routines): Remove lowlevelrwlock. Add
pthread_rwlock_rdlock, pthread_rwlock_timedrdlock,
pthread_rwlock_wrlock, pthread_rwlock_timedwrlock, and
pthread_rwlock_unlock.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelrwlock.S: Removed
* sysdeps/unix/sysv/linux/i386/i586/lowlevelrwlock.S: Removed
* sysdeps/unix/sysv/linux/i386/i686/lowlevelrwlock.S: Removed
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S:
New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S:
New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_rwlock_rdlock.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_rwlock_timedrdlock.S:
New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_rwlock_wrlock.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_rwlock_timedwrlock.S:
New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_rwlock_unlock.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_rwlock_rdlock.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_rwlock_timedrdlock.S:
New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_rwlock_wrlock.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_rwlock_timedwrlock.S:
New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_rwlock_unlock.S: New file.
2003-01-29 00:39:03 +00:00
Ulrich Drepper
4a99d1604d
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Removed
* sysdeps/unix/sysv/linux/i386/i486/lowlevelcond.S: Removed
* sysdeps/unix/sysv/linux/i386/i586/lowlevelsem.S: Removed
* sysdeps/unix/sysv/linux/i386/i586/lowlevelcond.S: Removed
* sysdeps/unix/sysv/linux/i386/i686/lowlevelsem.S: Removed
* sysdeps/unix/sysv/linux/i386/i686/lowlevelcond.S: Removed
* sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: New file.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/sem_wait.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/sem_trywait.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/sem_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/sem_post.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_cond_wait.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_cond_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_cond_signal.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/pthread_cond_broadcast.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/sem_wait.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/sem_trywait.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/sem_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/sem_post.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_cond_wait.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_cond_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_cond_signal.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/pthread_cond_broadcast.S: New file.
* sysdeps/unix/sysv/linux/i386/lowlevelcond.h: New file.
2003-01-29 00:01:01 +00:00
Ulrich Drepper
1d087a7e39
Update.
...
* Makefile (libpthread-routines): Remove lowlevelcond and
lowlevelsem. Add sem_wait, sem_trywait, sem_timedwait, sem_post,
pthread_cond_wait, pthread_cond_timedwait, pthread_cond_signal,
and pthread_cond_broadcast.
* sysdeps/unix/sysv/linux/i486/lowlevelsem.S: Removed
* sysdeps/unix/sysv/linux/i486/lowlevelcond.S: Removed
* sysdeps/unix/sysv/linux/i586/lowlevelsem.S: Removed
* sysdeps/unix/sysv/linux/i586/lowlevelcond.S: Removed
* sysdeps/unix/sysv/linux/i686/lowlevelsem.S: Removed
* sysdeps/unix/sysv/linux/i686/lowlevelcond.S: Removed
* sysdeps/unix/sysv/linux/i486/sem_wait.S: New file.
* sysdeps/unix/sysv/linux/i486/sem_trywait.S: New file.
* sysdeps/unix/sysv/linux/i486/sem_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i486/sem_post.S: New file.
* sysdeps/unix/sysv/linux/i486/pthread_cond_wait.S: New file.
* sysdeps/unix/sysv/linux/i486/pthread_cond_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i486/pthread_cond_signal.S: New file.
* sysdeps/unix/sysv/linux/i486/pthread_cond_broadcast.S: New file.
* sysdeps/unix/sysv/linux/i586/sem_wait.S: New file.
* sysdeps/unix/sysv/linux/i586/sem_trywait.S: New file.
* sysdeps/unix/sysv/linux/i586/sem_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i586/sem_post.S: New file.
* sysdeps/unix/sysv/linux/i586/pthread_cond_wait.S: New file.
* sysdeps/unix/sysv/linux/i586/pthread_cond_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i586/pthread_cond_signal.S: New file.
* sysdeps/unix/sysv/linux/i586/pthread_cond_broadcast.S: New file.
* sysdeps/unix/sysv/linux/i686/sem_wait.S: New file.
* sysdeps/unix/sysv/linux/i686/sem_trywait.S: New file.
* sysdeps/unix/sysv/linux/i686/sem_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i686/sem_post.S: New file.
* sysdeps/unix/sysv/linux/i686/pthread_cond_wait.S: New file.
* sysdeps/unix/sysv/linux/i686/pthread_cond_timedwait.S: New file.
* sysdeps/unix/sysv/linux/i686/pthread_cond_signal.S: New file.
* sysdeps/unix/sysv/linux/i686/pthread_cond_broadcast.S: New file.
2003-01-28 23:52:31 +00:00
Ulrich Drepper
e6ebd2e4db
Update.
...
2003-01-27 Martin Schwidefsky <schwidefsky@de.ibm.com>
* elf/elf.h: Add new s390 relocs.
* elf/tls-macros.h: Add s390 versions.
* sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
* sysdeps/s390/dl-tls.h: New file.
* sysdeps/s390/libc-tls.c: New file.
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
relocs for class PLT.
(elf_machine_rela): Handle TLS relocs.
* sysdeps/s390/s390-64/dl-machine.h: Likewise.
* sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
* sysdeps/s390/s390-64/elf/configure.in: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
CLONE_CHILD_*TID flags.
* sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
bit offset.
* sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
(SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
(SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
variants.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
(SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
(SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
variants.
2003-01-28 10:42:28 +00:00
Ulrich Drepper
0566b130fb
Update.
...
2003-01-21 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
2003-01-28 08:30:50 +00:00
Ulrich Drepper
47805511c4
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Don't export
lll_unlock_wake_cb.
2003-01-14 04:10:53 +00:00
Ulrich Drepper
6aca81bb9d
Update.
...
2003-01-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
argument.
(INTERNAL_SYSCALL_DECL): Define.
2003-01-06 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
argument.
(INTERNAL_SYSCALL_DECL): Define.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
(INLINE_SYSCALL): Adjust.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
* elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
add err argument to INTERNAL_SYSCALL* macros.
* sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
* sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
* sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
* sysdeps/unix/sysv/linux/m68k/getpagesize.c (__getpagesize):
Likewise.
* sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
* sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
2003-01-09 04:19:03 +00:00
Ulrich Drepper
e9c7764ec9
Update.
...
2003-01-07 Jakub Jelinek <jakub@redhat.com>
* elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
* elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
2003-01-07 18:54:08 +00:00
Ulrich Drepper
73e9ae887f
Update.
...
2003-01-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/Makefile: New file.
2003-01-05 10:55:15 +00:00
Ulrich Drepper
b1151300d6
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/lowlevelcond.S
(condvar_cleanup): Get condvar address from the right place.
2003-01-04 02:12:26 +00:00
Ulrich Drepper
842d281752
Update.
...
* sysdeps/unix/sysv/linux/i386/i486/lowlevelcond.S
(__pthread_cond_wait): Don't save cancellation mode and seq value
in same location.
2003-01-03 08:14:47 +00:00
Ulrich Drepper
05df18c347
Update.
...
2003-01-02 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/pthreadtypes.h (pthread_cond_t): Add padding.
* condvar.c: Add symbol versioning. The compatibility versions
are the same as the change in the interface does not effect this
implementation.
* Versions [libpthread]: Add definitions for new pthread_cond_*
interfaces for version GLIBC_2.3.2.
2003-01-02 11:01:30 +00:00
Ulrich Drepper
fd8979e483
Update.
...
2003-01-01 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/lowlevelrwlock.S: Avoid
unnecessary zero offset when addressing MUTEX.
2003-01-02 07:12:51 +00:00
Ulrich Drepper
6ff19c8125
Pretty printing.
2003-01-02 06:29:48 +00:00
Ulrich Drepper
6d6ee629af
Update.
...
2002-12-31 Ulrich Drepper <drepper@redhat.com>
* malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
is available.
* sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
2002-12-31 21:10:07 +00:00
Ulrich Drepper
a4baf360be
Update.
...
* io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
* sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
nsec resolution changes.
(xstat64_conv): Likewise.
(xstat32_conv): Likewise.
* sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
struct kernel_stat.
* sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
structs stat and stat64.
* time/time.h (__timespec_defined): Define for __USE_MISC.
2002-12-31 Ulrich Drepper <drepper@redhat.com>
* include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
and __libc_current_sigrtmax.
2002-12-31 Jakub Jelinek <jakub@redhat.com>
* include/errno.h (__errno_location): Add prototype.
Use libc_hidden_proto unconditionally.
* include/netdb.h (__h_errno_location): Use libc_hidden_proto
unconditionally.
* include/resolv.h (__res_state): Likewise.
* hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
* include/sys/socket.h (accept): Add libc_hidden_proto.
* include/errno.h (__errno_location): Likewise.
* include/netdb.h (__h_errno_location): Likewise.
* include/resolv.h (__res_state): Likewise.
* include/unistd.h (__lseek): Likewise.
* sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
* sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
* sysdeps/generic/res-state.c (__res_state): Likewise.
* sysdeps/generic/accept.c (accept): Likewise.
* sysdeps/generic/lseek.c (__lseek): Likewise.
* sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
__libc_current_sigrtmax): Likewise.
* sysdeps/mach/hurd/accept.c (accept): Likewise.
* sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
* sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
* sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
* sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
* sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
* sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
* sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
* sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
alias to llseek.
(__GI_accept): New alias to accept.
* sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
New alias to llseek.
(__GI_accept): New alias to accept.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
Likewise.
* sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
Likewise.
* sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
* sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
strong_alias (name, __GI_name).
* sysdeps/arm/bsd-_setjmp.S : Likewise.
* sysdeps/hppa/bsd-_setjmp.S : Likewise.
* sysdeps/i386/bsd-_setjmp.S : Likewise.
* sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
* sysdeps/mips/bsd-_setjmp.S : Likewise.
* sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
* sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
* sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
* sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
* sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
* sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
* sysdeps/sh/bsd-_setjmp.S : Likewise.
* sysdeps/sparc/sparc32/setjmp.S : Likewise.
* sysdeps/unix/arm/fork.S : Likewise.
* sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
* sysdeps/unix/bsd/i386/vfork.S : Likewise.
* sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
* sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
* sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
* sysdeps/unix/bsd/vax/vfork.S : Likewise.
* sysdeps/unix/i386/fork.S : Likewise.
* sysdeps/unix/mips/fork.S : Likewise.
* sysdeps/unix/sparc/fork.S : Likewise.
* sysdeps/unix/sparc/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
* sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
* sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
* sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
* sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
* sysdeps/unix/fork.S : Likewise.
* sysdeps/vax/bsd-_setjmp.S : Likewise.
* sysdeps/x86_64/bsd-_setjmp.S : Likewise.
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
inclusion.
2002-12-31 20:46:11 +00:00
Ulrich Drepper
3b7ed87125
Update.
...
2002-12-28 Ulrich Drepper <drepper@redhat.com>
* misc/sys/cdefs.h (__attribute_deprecated__): New #define.
2002-12-28 22:19:04 +00:00