diff options
author | Luis Henriques <lhenriques@suse.com> | 2020-01-08 10:03:53 +0000 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2020-01-27 16:53:40 +0100 |
commit | 78beb0ff2feceb1d7568333f93195e1a4d95a49a (patch) | |
tree | 95c0d293b1403ac31c1adf75d95a8ea02fb985d1 /include/linux/ceph/osd_client.h | |
parent | 045100cd79f503487b95a1d11e96b221fe50693c (diff) | |
download | talos-op-linux-78beb0ff2feceb1d7568333f93195e1a4d95a49a.tar.gz talos-op-linux-78beb0ff2feceb1d7568333f93195e1a4d95a49a.zip |
ceph: use copy-from2 op in copy_file_range
Instead of using the copy-from operation, switch copy_file_range to the
new copy-from2 operation, which allows to send the truncate_seq and
truncate_size parameters.
If an OSD does not support the copy-from2 operation it will return
-EOPNOTSUPP. In that case, the kernel client will stop trying to do
remote object copies for this fs client and will always use the generic
VFS copy_file_range.
Signed-off-by: Luis Henriques <lhenriques@suse.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'include/linux/ceph/osd_client.h')
-rw-r--r-- | include/linux/ceph/osd_client.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/ceph/osd_client.h b/include/linux/ceph/osd_client.h index eaffbdddf89a..5a62dbd3f4c2 100644 --- a/include/linux/ceph/osd_client.h +++ b/include/linux/ceph/osd_client.h @@ -534,6 +534,7 @@ int ceph_osdc_copy_from(struct ceph_osd_client *osdc, struct ceph_object_id *dst_oid, struct ceph_object_locator *dst_oloc, u32 dst_fadvise_flags, + u32 truncate_seq, u64 truncate_size, u8 copy_from_flags); /* watch/notify */ |