diff options
author | Jakub Jelinek <jakub@redhat.com> | 2007-08-14 19:59:35 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2007-08-14 19:59:35 +0000 |
commit | 467d1345e0b6e379954d255f88504b8fe1af6e7b (patch) | |
tree | 44f37a61c0416a150dc5804fbb80e0a30deb0fb5 /nptl | |
parent | 702a94146a857a3b5e5bcfccca4a79e2357dfde0 (diff) | |
download | glibc-467d1345e0b6e379954d255f88504b8fe1af6e7b.tar glibc-467d1345e0b6e379954d255f88504b8fe1af6e7b.tar.gz glibc-467d1345e0b6e379954d255f88504b8fe1af6e7b.tar.bz2 glibc-467d1345e0b6e379954d255f88504b8fe1af6e7b.zip |
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
(sparc_fixup_plt): Add do_flush argument instead of figuring whether
flush should be used or not inside of the function.
(elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
__thread_start): Use HIDDEN_JUMPTARGET.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
__thread_start): Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
nptl/
* sysdeps/unix/sysv/linux/lowlevellock.c: Comment fix.
* sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c
(__lll_timedwait_tid): Pass LLL_SHARED as 4th argument to
lll_futex_timed_wait.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
(sparc_fixup_plt): Add do_flush argument instead of figuring whether
flush should be used or not inside of the function.
(elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
__thread_start): Use HIDDEN_JUMPTARGET.
* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
__thread_start): Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
Diffstat (limited to 'nptl')
-rw-r--r-- | nptl/ChangeLog | 5 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/lowlevellock.c | 2 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c | 9 |
3 files changed, 11 insertions, 5 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 43d97f687e..aff4a915da 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,5 +1,10 @@ 2007-08-14 Jakub Jelinek <jakub@redhat.com> + * sysdeps/unix/sysv/linux/lowlevellock.c: Comment fix. + * sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c + (__lll_timedwait_tid): Pass LLL_SHARED as 4th argument to + lll_futex_timed_wait. + * sysdeps/unix/sysv/linux/alpha/lowlevellock.h (__lll_unlock, __lll_robust_unlock): Rewrite as macros instead of inline functions. * sysdeps/unix/sysv/linux/s390/lowlevellock.h (__lll_unlock, diff --git a/nptl/sysdeps/unix/sysv/linux/lowlevellock.c b/nptl/sysdeps/unix/sysv/linux/lowlevellock.c index 1187800148..f0e42957c2 100644 --- a/nptl/sysdeps/unix/sysv/linux/lowlevellock.c +++ b/nptl/sysdeps/unix/sysv/linux/lowlevellock.c @@ -37,7 +37,7 @@ __lll_lock_wait_private (int *futex) } -/* These functions doesn't get included in libc.so */ +/* These functions don't get included in libc.so */ #ifdef IS_IN_libpthread void __lll_lock_wait (int *futex, int private) diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c index 1ee9b4737b..682307eef1 100644 --- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c +++ b/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c @@ -36,9 +36,9 @@ __lll_lock_wait_private (int *futex) while (atomic_compare_and_exchange_val_24_acq (futex, 2, 0) != 0); } -#ifdef IS_IN_libpthread -/* These functions don't get included in libc.so */ +/* These functions don't get included in libc.so */ +#ifdef IS_IN_libpthread void __lll_lock_wait (int *futex, int private) { @@ -121,8 +121,9 @@ __lll_timedwait_tid (int *tidp, const struct timespec *abstime) if (rt.tv_sec < 0) return ETIMEDOUT; - /* Wait until thread terminates. */ - if (lll_futex_timed_wait (tidp, tid, &rt) == -ETIMEDOUT) + /* Wait until thread terminates. The kernel so far does not use + the private futex operations for this. */ + if (lll_futex_timed_wait (tidp, tid, &rt, LLL_SHARED) == -ETIMEDOUT) return ETIMEDOUT; } |