linux_dsm_epyc7002/fs/ceph
Amir Goldstein 5dae222a5f vfs: allow copy_file_range to copy across devices
We want to enable cross-filesystem copy_file_range functionality
where possible, so push the "same superblock only" checks down to
the individual filesystem callouts so they can make their own
decisions about cross-superblock copy offload and fallack to
generic_copy_file_range() for cross-superblock copy.

[Amir] We do not call ->remap_file_range() in case the files are not
on the same sb and do not call ->copy_file_range() in case the files
do not belong to the same filesystem driver.

This changes behavior of the copy_file_range(2) syscall, which will
now allow cross filesystem in-kernel copy.  CIFS already supports
cross-superblock copy, between two shares to the same server. This
functionality will now be available via the copy_file_range(2) syscall.

Cc: Steve French <stfrench@microsoft.com>
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
2019-06-09 10:06:20 -07:00
..
acl.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 173 2019-05-30 11:26:40 -07:00
addr.c
cache.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 188 2019-05-30 11:29:21 -07:00
cache.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 188 2019-05-30 11:29:21 -07:00
caps.c ceph: fix error handling in ceph_get_caps() 2019-06-05 20:34:39 +02:00
ceph_frag.c
debugfs.c
dir.c
export.c
file.c vfs: allow copy_file_range to copy across devices 2019-06-09 10:06:20 -07:00
inode.c ceph: avoid iput_final() while holding mutex or in dispatch thread 2019-06-05 20:34:39 +02:00
ioctl.c
ioctl.h
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
locks.c
Makefile
mds_client.c ceph: avoid iput_final() while holding mutex or in dispatch thread 2019-06-05 20:34:39 +02:00
mds_client.h
mdsmap.c
quota.c ceph: avoid iput_final() while holding mutex or in dispatch thread 2019-06-05 20:34:39 +02:00
snap.c ceph: avoid iput_final() while holding mutex or in dispatch thread 2019-06-05 20:34:39 +02:00
strings.c
super.c ceph: single workqueue for inode related works 2019-06-05 20:34:39 +02:00
super.h ceph: avoid iput_final() while holding mutex or in dispatch thread 2019-06-05 20:34:39 +02:00
xattr.c