From: Venky Shankar Date: Thu, 20 Mar 2025 13:27:08 +0000 (+0000) Subject: mds: introduce BLOCKDIFF feature bit X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=16918487d6c1d2fc548b22668fc227435ac9ec6d;p=ceph.git mds: introduce BLOCKDIFF feature bit Fixes: http://tracker.ceph.com/issues/70584 Signed-off-by: Venky Shankar --- diff --git a/src/client/Client.cc b/src/client/Client.cc index f1f70c1321d81..b04900912f91b 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -9994,7 +9994,7 @@ int Client::file_blockdiff(struct scan_state_t *state, const UserPerm &perms, cct->_conf.get_val("client_file_blockdiff_max_concurrent_object_scans"); bufferlist bl; - r = make_request(req, perms, nullptr, nullptr, -1, &bl); + r = make_request(req, perms, nullptr, nullptr, -1, &bl, CEPHFS_FEATURE_BLOCKDIFF); ldout(cct, 10) << __func__ << ": result=" << r << dendl; if (r < 0) { diff --git a/src/mds/cephfs_features.cc b/src/mds/cephfs_features.cc index edd9b5bc21a80..f57f95fc8c8d8 100644 --- a/src/mds/cephfs_features.cc +++ b/src/mds/cephfs_features.cc @@ -34,6 +34,7 @@ static const std::array feature_names "has_owner_uidgid", "client_mds_auth_caps", "charmap", + "blockdiff" }; static_assert(feature_names.size() == CEPHFS_FEATURE_MAX + 1); diff --git a/src/mds/cephfs_features.h b/src/mds/cephfs_features.h index c681416d626d1..391054d8701c1 100644 --- a/src/mds/cephfs_features.h +++ b/src/mds/cephfs_features.h @@ -50,7 +50,8 @@ namespace ceph { #define CEPHFS_FEATURE_HAS_OWNER_UIDGID 20 #define CEPHFS_FEATURE_MDS_AUTH_CAPS_CHECK 21 #define CEPHFS_FEATURE_CHARMAP 22 -#define CEPHFS_FEATURE_MAX 22 +#define CEPHFS_FEATURE_BLOCKDIFF 23 +#define CEPHFS_FEATURE_MAX 23 #define CEPHFS_FEATURES_ALL { \ 0, 1, 2, 3, 4, \ @@ -73,7 +74,8 @@ namespace ceph { CEPHFS_FEATURE_NEW_SNAPREALM_INFO, \ CEPHFS_FEATURE_HAS_OWNER_UIDGID, \ CEPHFS_FEATURE_MDS_AUTH_CAPS_CHECK, \ - CEPHFS_FEATURE_CHARMAP, \ + CEPHFS_FEATURE_CHARMAP, \ + CEPHFS_FEATURE_BLOCKDIFF, \ } #define CEPHFS_METRIC_FEATURES_ALL { \