From 7e1ff08c260ae105208edb4e778e50525dff05d3 Mon Sep 17 00:00:00 2001 From: Aurelien Jarno Date: Wed, 23 Mar 2016 23:35:08 +0100 Subject: [PATCH] Assume __NR_utimensat is always defined With the 2.6.32 minimum kernel on x86 and 3.2 on other architectures, __NR_utimensat is always defined. Changelog: * sysdeps/unix/sysv/linux/futimens.c (futimens) [__NR_utimensat]: Make code unconditional. [!__NR_utimensat]: Remove conditional code. * sysdeps/unix/sysv/linux/lutimes.c (lutimes) [__NR_utimensat]: Make code unconditional. [!__NR_utimensat]: Remove conditional code. * sysdeps/unix/sysv/linux/utimensat.c (utimensat) [__NR_utimensat]: Make code unconditional. [!__NR_utimensat]: Remove conditional code. --- ChangeLog | 12 ++++++++++++ sysdeps/unix/sysv/linux/futimens.c | 7 ------- sysdeps/unix/sysv/linux/lutimes.c | 8 -------- sysdeps/unix/sysv/linux/utimensat.c | 7 ------- 4 files changed, 12 insertions(+), 22 deletions(-) diff --git a/ChangeLog b/ChangeLog index ce633e7649..da349c01ea 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2016-03-23 Aurelien Jarno + + * sysdeps/unix/sysv/linux/futimens.c (futimens) [__NR_utimensat]: + Make code unconditional. + [!__NR_utimensat]: Remove conditional code. + * sysdeps/unix/sysv/linux/lutimes.c (lutimes) [__NR_utimensat]: + Make code unconditional. + [!__NR_utimensat]: Remove conditional code. + * sysdeps/unix/sysv/linux/utimensat.c (utimensat) [__NR_utimensat]: + Make code unconditional. + [!__NR_utimensat]: Remove conditional code. + 2016-03-23 Aurelien Jarno * sysdeps/unix/sysv/linux/dl-openat64.c (openat64) [__NR_openat]: diff --git a/sysdeps/unix/sysv/linux/futimens.c b/sysdeps/unix/sysv/linux/futimens.c index 3176e65eaf..3f96210019 100644 --- a/sysdeps/unix/sysv/linux/futimens.c +++ b/sysdeps/unix/sysv/linux/futimens.c @@ -31,15 +31,8 @@ int futimens (int fd, const struct timespec tsp[2]) { -#ifdef __NR_utimensat if (fd < 0) return INLINE_SYSCALL_ERROR_RETURN_VALUE (EBADF); /* Avoid implicit array coercion in syscall macros. */ return INLINE_SYSCALL (utimensat, 4, fd, NULL, &tsp[0], 0); -#else - return INLINE_SYSCALL_ERROR_RETURN_VALUE (ENOSYS); -#endif } -#ifndef __NR_utimensat -stub_warning (futimens) -#endif diff --git a/sysdeps/unix/sysv/linux/lutimes.c b/sysdeps/unix/sysv/linux/lutimes.c index 69d3cfa0b3..49fad3e8eb 100644 --- a/sysdeps/unix/sysv/linux/lutimes.c +++ b/sysdeps/unix/sysv/linux/lutimes.c @@ -27,7 +27,6 @@ int lutimes (const char *file, const struct timeval tvp[2]) { -#ifdef __NR_utimensat /* The system call espects timespec, not timeval. */ struct timespec ts[2]; if (tvp != NULL) @@ -42,11 +41,4 @@ lutimes (const char *file, const struct timeval tvp[2]) return INLINE_SYSCALL (utimensat, 4, AT_FDCWD, file, tvp ? ts : NULL, AT_SYMLINK_NOFOLLOW); -#else - return INLINE_SYSCALL_ERROR_RETURN_VALUE (ENOSYS); -#endif } - -#ifndef __NR_utimensat -stub_warning (lutimes) -#endif diff --git a/sysdeps/unix/sysv/linux/utimensat.c b/sysdeps/unix/sysv/linux/utimensat.c index f3a9697a17..89af2f516b 100644 --- a/sysdeps/unix/sysv/linux/utimensat.c +++ b/sysdeps/unix/sysv/linux/utimensat.c @@ -31,13 +31,6 @@ utimensat (int fd, const char *file, const struct timespec tsp[2], { if (file == NULL) return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL); -#ifdef __NR_utimensat /* Avoid implicit array coercion in syscall macros. */ return INLINE_SYSCALL (utimensat, 4, fd, file, &tsp[0], flags); -#else - return INLINE_SYSCALL_ERROR_RETURN_VALUE (ENOSYS); -#endif } -#ifndef __NR_utimensat -stub_warning (utimensat) -#endif