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>
This commit is contained in:
Jeff Layton 2019-07-24 07:59:51 -04:00 committed by Ilya Dryomov
parent 750670341a
commit e1e4460202
1 changed files with 0 additions and 2 deletions

View File

@ -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; int src_got = 0, dst_got = 0, err, dirty;
bool do_final_copy = false; bool do_final_copy = false;
if (src_inode == dst_inode)
return -EINVAL;
if (src_inode->i_sb != dst_inode->i_sb) if (src_inode->i_sb != dst_inode->i_sb)
return -EXDEV; return -EXDEV;
if (ceph_snap(dst_inode) != CEPH_NOSNAP) if (ceph_snap(dst_inode) != CEPH_NOSNAP)