]> git.baikalelectronics.ru Git - kernel.git/commit
fs: try to clone files first in vfs_copy_file_range
authorChristoph Hellwig <hch@lst.de>
Sat, 10 Dec 2016 00:17:19 +0000 (16:17 -0800)
committerDarrick J. Wong <darrick.wong@oracle.com>
Sat, 10 Dec 2016 00:17:19 +0000 (16:17 -0800)
commit387b7668be890781ba6ac16bab04abe6d886ebbb
treee90308681a4571301e7bbf9e1e95b1eb579c911b
parentdc498540352267f9c2608498e0757e7908383f83
fs: try to clone files first in vfs_copy_file_range

A clone is a perfectly fine implementation of a file copy, so most
file systems just implement the copy that way.  Instead of duplicating
this logic move it to the VFS.  Currently btrfs and XFS implement copies
the same way as clones and there is no behavior change for them, cifs
only implements clones and grow support for copy_file_range with this
patch.  NFS implements both, so this will allow copy_file_range to work
on servers that only implement CLONE and be lot more efficient on servers
that implements CLONE and COPY.

Signed-off-by: Christoph Hellwig <hch@lst.de>
fs/btrfs/ctree.h
fs/btrfs/file.c
fs/btrfs/ioctl.c
fs/read_write.c
fs/xfs/xfs_file.c