From: Edwin Rodriguez Date: Thu, 7 Aug 2025 18:27:18 +0000 (-0400) Subject: mds/MDSMap: Enhance set_min_compat_client to validate iterator range before sorting... X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=ad8c68c0b26abcc6e971a8fdf6d98cc86ee60385;p=ceph.git mds/MDSMap: Enhance set_min_compat_client to validate iterator range before sorting feature bits Fixes: https://tracker.ceph.com/issues/72476 Signed-off-by: Edwin Rodriguez --- diff --git a/src/mds/MDSMap.cc b/src/mds/MDSMap.cc index 5e0af74797c5e..2d96c637d9c43 100644 --- a/src/mds/MDSMap.cc +++ b/src/mds/MDSMap.cc @@ -1336,7 +1336,14 @@ void MDSMap::set_min_compat_client(ceph_release_t version) else if (version >= ceph_release_t::jewel) bits.push_back(CEPHFS_FEATURE_JEWEL); - std::sort(bits.begin(), bits.end()); + if (bits.size() >= 2) { // Need at least 2 elements to sort + auto first = bits.begin(); + auto last = bits.end(); + if (first < last) { // Validate iterator range + std::sort(first, last); + } + } + required_client_features = feature_bitset_t(bits); }