diff options
-rw-r--r-- | tools/perf/bench/futex.h | 43 |
1 files changed, 3 insertions, 40 deletions
diff --git a/tools/perf/bench/futex.h b/tools/perf/bench/futex.h index 6a7dd86871eb..ebdc2b032afc 100644 --- a/tools/perf/bench/futex.h +++ b/tools/perf/bench/futex.h @@ -8,12 +8,10 @@ #ifndef _FUTEX_H #define _FUTEX_H -#include <errno.h> #include <unistd.h> #include <sys/syscall.h> #include <sys/types.h> #include <linux/futex.h> -#include <linux/time_types.h> struct bench_futex_parameters { bool silent; @@ -30,7 +28,7 @@ struct bench_futex_parameters { }; /** - * futex_syscall() - __NR_futex syscall wrapper + * futex_syscall() - SYS_futex syscall wrapper * @uaddr: address of first futex * @op: futex op code * @val: typically expected value of uaddr, but varies by op @@ -51,49 +49,14 @@ static inline int futex_syscall(volatile u_int32_t *uaddr, int op, u_int32_t val, struct timespec *timeout, volatile u_int32_t *uaddr2, int val3, int opflags) { -#if defined(__NR_futex_time64) - if (sizeof(*timeout) != sizeof(struct __kernel_old_timespec)) { - int ret = syscall(__NR_futex_time64, uaddr, op | opflags, val, timeout, - uaddr2, val3); - if (ret == 0 || errno != ENOSYS) - return ret; - } -#endif - -#if defined(__NR_futex) - if (sizeof(*timeout) == sizeof(struct __kernel_old_timespec)) - return syscall(__NR_futex, uaddr, op | opflags, val, timeout, uaddr2, val3); - - if (timeout && timeout->tv_sec == (long)timeout->tv_sec) { - struct __kernel_old_timespec ts32; - - ts32.tv_sec = (__kernel_long_t) timeout->tv_sec; - ts32.tv_nsec = (__kernel_long_t) timeout->tv_nsec; - - return syscall(__NR_futex, uaddr, op | opflags, val, ts32, uaddr2, val3); - } else if (!timeout) { - return syscall(__NR_futex, uaddr, op | opflags, val, NULL, uaddr2, val3); - } -#endif - - errno = ENOSYS; - return -1; + return syscall(SYS_futex, uaddr, op | opflags, val, timeout, uaddr2, val3); } static inline int futex_syscall_nr_requeue(volatile u_int32_t *uaddr, int op, u_int32_t val, int nr_requeue, volatile u_int32_t *uaddr2, int val3, int opflags) { -#if defined(__NR_futex_time64) - int ret = syscall(__NR_futex_time64, uaddr, op | opflags, val, nr_requeue, - uaddr2, val3); - if (ret == 0 || errno != ENOSYS) - return ret; -#endif - -#if defined(__NR_futex) - return syscall(__NR_futex, uaddr, op | opflags, val, nr_requeue, uaddr2, val3); -#endif + return syscall(SYS_futex, uaddr, op | opflags, val, nr_requeue, uaddr2, val3); } /** |