copy_file_range: New function to copy file data

System Internals / glibc - Florian Weimer [redhat.com] - 22 December 2017 09:55 EST

The semantics are based on the Linux system call, but a very close emulation in user space is provided.

bad7a0c81f copy_file_range: New function to copy file data
ChangeLog | 21 +
NEWS | 2 +
io/Makefile | 10 +-
io/Versions | 3 +
io/copy_file_range-compat.c | 160 ++++
io/copy_file_range.c | 22 +
io/tst-copy_file_range-compat.c | 30 +
io/tst-copy_file_range.c | 833 +++++++++++++++++++++
manual/llio.texi | 88 +++
posix/unistd.h | 7 +-
support/Makefile | 3 +
support/support-xfstat.c | 28 +
support/xftruncate.c | 27 +
support/xlseek.c | 29 +
support/xunistd.h | 3 +
sysdeps/unix/sysv/linux/aarch64/libc.abilist | 1 +
sysdeps/unix/sysv/linux/alpha/libc.abilist | 1 +
sysdeps/unix/sysv/linux/arm/libc.abilist | 1 +
sysdeps/unix/sysv/linux/copy_file_range.c | 46 ++
sysdeps/unix/sysv/linux/hppa/libc.abilist | 1 +
sysdeps/unix/sysv/linux/i386/libc.abilist | 1 +
sysdeps/unix/sysv/linux/ia64/libc.abilist | 1 +
sysdeps/unix/sysv/linux/kernel-features.h | 4 +
sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist | 1 +
sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist | 1 +
sysdeps/unix/sysv/linux/microblaze/libc.abilist | 1 +
.../unix/sysv/linux/mips/mips32/fpu/libc.abilist | 1 +
.../unix/sysv/linux/mips/mips32/nofpu/libc.abilist | 1 +
.../unix/sysv/linux/mips/mips64/n32/libc.abilist | 1 +
.../unix/sysv/linux/mips/mips64/n64/libc.abilist | 1 +
sysdeps/unix/sysv/linux/nios2/libc.abilist | 1 +
.../sysv/linux/powerpc/powerpc32/fpu/libc.abilist | 1 +
.../linux/powerpc/powerpc32/nofpu/libc.abilist | 1 +
.../sysv/linux/powerpc/powerpc64/libc-le.abilist | 1 +
.../unix/sysv/linux/powerpc/powerpc64/libc.abilist | 1 +
sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist | 1 +
sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist | 1 +
sysdeps/unix/sysv/linux/sh/libc.abilist | 1 +
sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist | 1 +
sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist | 1 +
sysdeps/unix/sysv/linux/tile/tilegx32/libc.abilist | 1 +
sysdeps/unix/sysv/linux/tile/tilegx64/libc.abilist | 1 +
sysdeps/unix/sysv/linux/x86_64/64/libc.abilist | 1 +
sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist | 1 +
44 files changed, 1340 insertions(+), 3 deletions(-)

Upstream: sourceware.org


  • Share