From 9381306085ec6d6d0c671afb5816dcfc85b04e97 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 1 Nov 2016 08:55:17 -0700 Subject: [PATCH] utimensat: remove FIXME for old Linux kernels * lib/utimensat.c (rpl_utimensat): Update FIXME comment. * m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Belatedy do a "simplify this in 2012" FIXME, by assuming the file system bug is absent unless demonstrated to be present. We no longer need to worry about Linux kernel 2.6.32 when building with newer kernels. --- ChangeLog | 9 +++++++++ lib/utimensat.c | 4 ++-- m4/utimensat.m4 | 18 ++++-------------- 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/ChangeLog b/ChangeLog index c8ac92c8f0..999dc0418a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2016-11-01 Paul Eggert + + utimensat: remove FIXME for old Linux kernels + * lib/utimensat.c (rpl_utimensat): Update FIXME comment. + * m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Belatedy do a "simplify + this in 2012" FIXME, by assuming the file system bug is absent + unless demonstrated to be present. We no longer need to worry + about Linux kernel 2.6.32 when building with newer kernels. + 2016-10-16 Bruno Haible qsort_r: Fix macrology for platforms that lack the function. diff --git a/lib/utimensat.c b/lib/utimensat.c index ae4da8f7d9..7ca3e4b394 100644 --- a/lib/utimensat.c +++ b/lib/utimensat.c @@ -69,8 +69,8 @@ rpl_utimensat (int fd, char const *file, struct timespec const times[2], The same bug occurs in Solaris 11.1 (Apr 2013). - FIXME: Simplify this for Linux in 2016 and for Solaris in - 2024, when file system bugs are no longer common. */ + FIXME: Simplify this in 2024, when these file system bugs are + no longer common on Gnulib target platforms. */ if (times && (times[0].tv_nsec == UTIME_OMIT || times[1].tv_nsec == UTIME_OMIT)) { diff --git a/m4/utimensat.m4 b/m4/utimensat.m4 index 550cd23c73..d9a4cd39bf 100644 --- a/m4/utimensat.m4 +++ b/m4/utimensat.m4 @@ -1,4 +1,4 @@ -# serial 5 +# serial 6 # See if we need to provide utimensat replacement. dnl Copyright (C) 2009-2016 Free Software Foundation, Inc. @@ -51,20 +51,10 @@ AC_DEFUN([gl_FUNC_UTIMENSAT], } return result; ]])], -dnl FIXME: simplify this in 2012, when file system bugs are no longer common - [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ -#ifdef __linux__ -/* The Linux kernel added utimensat in 2.6.22, but has bugs with UTIME_OMIT - in several file systems as recently as 2.6.32. Always replace utimensat - to support older kernels. */ -choke me -#endif - ]])], - [gl_cv_func_utimensat_works=yes], - [gl_cv_func_utimensat_works="needs runtime check"])], + [gl_cv_func_utimensat_works=yes], [gl_cv_func_utimensat_works=no], - [gl_cv_func_utimensat_works="guessing no"])]) - if test "$gl_cv_func_utimensat_works" != yes; then + [gl_cv_func_utimensat_works="guessing yes"])]) + if test "$gl_cv_func_utimensat_works" = no; then REPLACE_UTIMENSAT=1 fi fi -- 2.39.5