From fb034b35eb0efe3ac0a42ca34f90927c4d29d630 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 5 Jun 2023 22:04:37 -0700 Subject: [PATCH] copy-file-range: support building for older kernels * m4/copy-file-range.m4 (gl_FUNC_COPY_FILE_RANGE): Remove static check, to support the dubious practice of building for platforms that predate the build platform. On working kernels this adds an extra syscall the first time that copy_file_range is used. Problem reported for Gentoo by Sam James . --- ChangeLog | 8 ++++++++ m4/copy-file-range.m4 | 18 +++--------------- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index d8f04f737d..a917eb63a6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,13 @@ 2023-06-05 Paul Eggert + copy-file-range: support building for older kernels + * m4/copy-file-range.m4 (gl_FUNC_COPY_FILE_RANGE): + Remove static check, to support the dubious practice of + building for platforms that predate the build platform. + On working kernels this adds an extra syscall the first time + that copy_file_range is used. Problem reported for Gentoo by + Sam James . + manywarnings: more nuance about optimization * doc/manywarnings.texi (manywarnings): Suggest compiling with the optimization flags commonly used, as opposed to -O2 and -O0 diff --git a/m4/copy-file-range.m4 b/m4/copy-file-range.m4 index d41f2c4831..fa6ab34109 100644 --- a/m4/copy-file-range.m4 +++ b/m4/copy-file-range.m4 @@ -39,21 +39,9 @@ AC_DEFUN([gl_FUNC_COPY_FILE_RANGE], case $host_os in linux*) - AC_CACHE_CHECK([whether copy_file_range is known to work], - [gl_cv_copy_file_range_known_to_work], - [AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM( - [[#include - ]], - [[#if LINUX_VERSION_CODE < KERNEL_VERSION (5, 3, 0) - #error "copy_file_range is buggy" - #endif - ]])], - [gl_cv_copy_file_range_known_to_work=yes], - [gl_cv_copy_file_range_known_to_work=no])]) - if test "$gl_cv_copy_file_range_known_to_work" = no; then - REPLACE_COPY_FILE_RANGE=1 - fi;; + # See copy-file-range.c comment re pre-5.3 Linux kernel bugs. + # We should be able to remove this hack in 2025. + REPLACE_COPY_FILE_RANGE=1;; esac fi ]) -- 2.39.5