[PATCH] i386/pthread_cond_timedwait: always use clock_gettime
Aurelien Jarno
aurelien@aurel32.net
Tue Dec 29 22:32:00 GMT 2015
Since we require at least a 2.6.32 Linux kernel, the clock_gettime
syscall is always available. Remove the corresponding compatibility
code.
* sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.S
[!__NR_clock_gettime] (__pthread_cond_timedwait):
Remove compatibility code.
---
ChangeLog | 6 ++++++
sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.S | 18 ------------------
2 files changed, 6 insertions(+), 18 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 0fb5434..03556b8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2015-12-29 Aurelien Jarno <aurelien@aurel32.et>
+ * sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.S
+ [!__NR_clock_gettime] (__pthread_cond_timedwait): Remove
+ compatibility code.
+
+2015-12-29 Aurelien Jarno <aurelien@aurel32.et>
+
* sysdeps/unix/sysv/linux/dl-openat64.c [!__NR_openat] (openat64):
Remove compatibility code.
diff --git a/sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.S b/sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.S
index 130c090..cd8931a 100644
--- a/sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.S
+++ b/sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.S
@@ -555,7 +555,6 @@ __pthread_cond_timedwait:
/* Get the current time. */
108: movl %ebx, %edx
-# ifdef __NR_clock_gettime
/* Get the clock number. */
movl cond_nwaiters(%ebx), %ebx
andl $((1 << nwaiters_shift) - 1), %ebx
@@ -571,23 +570,6 @@ __pthread_cond_timedwait:
movl 4(%ebp), %edx
subl 24(%esp), %ecx
subl 28(%esp), %edx
-# else
- /* Get the current time. */
- leal 24(%esp), %ebx
- xorl %ecx, %ecx
- movl $__NR_gettimeofday, %eax
- ENTER_KERNEL
- movl %edx, %ebx
-
- /* Compute relative timeout. */
- movl 28(%esp), %eax
- movl $1000, %edx
- mul %edx /* Milli seconds to nano seconds. */
- movl (%ebp), %ecx
- movl 4(%ebp), %edx
- subl 24(%esp), %ecx
- subl %eax, %edx
-# endif
jns 112f
addl $1000000000, %edx
subl $1, %ecx
--
2.1.4
More information about the Libc-alpha
mailing list