summaryrefslogtreecommitdiff
path: root/admin/merge-gnulib
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2019-06-06 21:18:11 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2019-06-07 00:44:45 -0700
commit486a81f387bb59b2fbbc6aff7b41adbe1621394e (patch)
tree7b61ed0a44666f10e4da54ef3e0905974c861944 /admin/merge-gnulib
parent111408a0e9eb3a9492c4057ac7d6ddbb8b365aa9 (diff)
downloademacs-486a81f387bb59b2fbbc6aff7b41adbe1621394e.tar.gz
Use copy_file_range to copy files
The copy_file_range syscall (introduced in Linux kernel version 4.5) can copy files more efficiently via server-side copy etc. * admin/merge-gnulib (GNULIB_MODULES): Add copy-file-range. * lib/copy-file-range.c, m4/copy-file-range.m4: New files, copied from Gnulib. * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate. * src/fileio.c (Fcopy_file): Try copy_file_range first, falling back on read+write only if copy_file_range failed or if the input is empty and so could be a /proc file.
Diffstat (limited to 'admin/merge-gnulib')
-rwxr-xr-xadmin/merge-gnulib2
1 files changed, 1 insertions, 1 deletions
diff --git a/admin/merge-gnulib b/admin/merge-gnulib
index 4a69310d83c..c2d9291b843 100755
--- a/admin/merge-gnulib
+++ b/admin/merge-gnulib
@@ -27,7 +27,7 @@ GNULIB_URL=git://git.savannah.gnu.org/gnulib.git
GNULIB_MODULES='
alloca-opt binary-io byteswap c-ctype c-strcase
- careadlinkat close-stream
+ careadlinkat close-stream copy-file-range
count-leading-zeros count-one-bits count-trailing-zeros
crypto/md5-buffer crypto/sha1-buffer crypto/sha256-buffer crypto/sha512-buffer
d-type diffseq dosname dtoastr dtotimespec dup2