]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds/MDSMap: Enhance set_min_compat_client to validate iterator range before sorting... 64967/head
authorEdwin Rodriguez <edwin.rodriguez1@ibm.com>
Thu, 7 Aug 2025 18:27:18 +0000 (14:27 -0400)
committerEdwin Rodriguez <edwin.rodriguez1@ibm.com>
Mon, 25 Aug 2025 17:20:09 +0000 (13:20 -0400)
Fixes: https://tracker.ceph.com/issues/72476
Signed-off-by: Edwin Rodriguez <edwin.rodriguez1@ibm.com>
src/mds/MDSMap.cc

index 5e0af74797c5ef844b6a9de879dd2d0fb18a3163..2d96c637d9c438b032c54c2faf19c260350bbbb0 100644 (file)
@@ -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);
 }