From: Olga Kornievskaia <kolga@xxxxxxxxxx> A proposed VFS change removes the check for the files to reside under the same file system prior to attempting a copy. Instead, a file system driver implementation of the destination file is allowed to perform a cross-device copy_file_range(). If that filesystem does not support cross device copy, it returns -EXDEV. Signed-off-by: Olga Kornievskaia <kolga@xxxxxxxxxx> --- man2/copy_file_range.2 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/man2/copy_file_range.2 b/man2/copy_file_range.2 index 20374ab..03750c5 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. Starting 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 @@ -129,9 +130,9 @@ Out of memory. 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. +The file system of the +.I file_out +does not support cross device file copy. .SH VERSIONS The .BR copy_file_range () -- 1.8.3.1