diff options
author | Jeff Layton <jlayton@kernel.org> | 2019-07-24 07:59:51 -0400 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2019-09-16 12:06:23 +0200 |
commit | e1e44602021358336fb524affe53ce3c09b34beb (patch) | |
tree | 44893957884d6e7b30d364c1cb28c4c06eabde1f /fs/ceph | |
parent | 750670341a24cb714e624e0fd7da30900ad93752 (diff) | |
download | linux-e1e44602021358336fb524affe53ce3c09b34beb.tar.gz linux-e1e44602021358336fb524affe53ce3c09b34beb.tar.bz2 linux-e1e44602021358336fb524affe53ce3c09b34beb.zip |
ceph: allow copy_file_range when src and dst inode are same
There is no reason to prevent this. The OSD should be able to handle
this as long as the objects are different, and the existing code falls
back when the offset into the object is different.
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Acked-by: Luis Henriques <lhenriques@suse.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'fs/ceph')
-rw-r--r-- | fs/ceph/file.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/ceph/file.c b/fs/ceph/file.c index 685a03cc4b77..f657fabcb3ee 100644 --- a/fs/ceph/file.c +++ b/fs/ceph/file.c @@ -1913,8 +1913,6 @@ static ssize_t __ceph_copy_file_range(struct file *src_file, loff_t src_off, int src_got = 0, dst_got = 0, err, dirty; bool do_final_copy = false; - if (src_inode == dst_inode) - return -EINVAL; if (src_inode->i_sb != dst_inode->i_sb) return -EXDEV; if (ceph_snap(dst_inode) != CEPH_NOSNAP) |