On Wed, Oct 24, 2018 at 10:59 PM Olga Kornievskaia <olga.kornievskaia@xxxxxxxxx> wrote: > > 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. Man page serves users of old kernels as well. You should not delete this expected error, but you can add "... and kernel does not support cross filesystem copy". Thanks, Amir.