Skip to content

Commit baaf7c8

Browse files
authored
Merge pull request ceph#57776 from rzarzynski/wip-bug-61948
mon, osd, *: expose upmap-primary in OSDMap::get_features()
2 parents 586cc0f + 331f1af commit baaf7c8

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/osd/OSDMap.cc

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1770,9 +1770,12 @@ uint64_t OSDMap::get_features(int entity_type, uint64_t *pmask) const
17701770
features |= CEPH_FEATURE_CRUSH_MSR;
17711771
mask |= CEPH_FEATURES_CRUSH;
17721772

1773-
if (!pg_upmap.empty() || !pg_upmap_items.empty() || !pg_upmap_primaries.empty())
1773+
if (!pg_upmap.empty() || !pg_upmap_items.empty())
17741774
features |= CEPH_FEATUREMASK_OSDMAP_PG_UPMAP;
17751775
mask |= CEPH_FEATUREMASK_OSDMAP_PG_UPMAP;
1776+
if (!pg_upmap_primaries.empty())
1777+
features |= CEPH_FEATUREMASK_SERVER_REEF;
1778+
mask |= CEPH_FEATUREMASK_SERVER_REEF;
17761779

17771780
for (auto &pool: pools) {
17781781
if (pool.second.has_flag(pg_pool_t::FLAG_HASHPSPOOL)) {
@@ -1849,6 +1852,9 @@ ceph_release_t OSDMap::get_min_compat_client() const
18491852
if (HAVE_FEATURE(f, CRUSH_MSR)) {
18501853
return ceph_release_t::squid; // v19.2.0
18511854
}
1855+
if (HAVE_FEATURE(f, SERVER_REEF)) { // v18.2.3 (upmap-primary; see #61948)
1856+
return ceph_release_t::reef;
1857+
}
18521858
if (HAVE_FEATURE(f, OSDMAP_PG_UPMAP) || // v12.0.0-1733-g27d6f43
18531859
HAVE_FEATURE(f, CRUSH_CHOOSE_ARGS)) { // v12.0.1-2172-gef1ef28
18541860
return ceph_release_t::luminous; // v12.2.0

0 commit comments

Comments
 (0)