From: Olga Kornievskaia <kolga@xxxxxxxxxx> A proposed VFS change removes the check for the files to reside under the same file system. Instead, a file system driver implementation is allowed to perform a cross-device copy_file_range() and if the file system fails to support it instead fallback to doing a do_splice copy. Therefore, EXDEV is no longer a possible error. Signed-off-by: Olga Kornievskaia <kolga@xxxxxxxxxx> --- man2/copy_file_range.2 | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/man2/copy_file_range.2 b/man2/copy_file_range.2 index 20374ab..723b2d0 100644 --- a/man2/copy_file_range.2 +++ b/man2/copy_file_range.2 @@ -39,7 +39,8 @@ The .BR copy_file_range () system call performs an in-kernel copy between two file descriptors without the additional cost of transferring data from the kernel to user space -and then back into the kernel. +and then back into the kernel. Since kernel version 4.21(???) passed in +file descriptors are not required to be under the same mounted file system. It copies up to .I len bytes of data from file descriptor @@ -128,10 +129,6 @@ Out of memory. .B ENOSPC There is not enough space on the target filesystem to complete the copy. .TP -.B EXDEV -The files referred to by -.IR file_in " and " file_out -are not on the same mounted filesystem. .SH VERSIONS The .BR copy_file_range () -- 1.8.3.1