}
if (osdmap.test_flag(CEPH_OSDMAP_REQUIRE_KRAKEN) &&
- !(m->osd_features & CEPH_FEATURE_SERVER_KRAKEN)) {
+ !HAVE_FEATURE(m->osd_features, SERVER_KRAKEN)) {
mon->clog->info() << "disallowing boot of OSD "
<< m->get_orig_source_inst()
<< " because the osdmap requires"
}
// make sure upgrades stop at jewel
- if ((m->osd_features & CEPH_FEATURE_SERVER_KRAKEN) &&
+ if (HAVE_FEATURE(m->osd_features, SERVER_KRAKEN) &&
!osdmap.test_flag(CEPH_OSDMAP_REQUIRE_JEWEL)) {
mon->clog->info() << "disallowing boot of post-jewel OSD "
<< m->get_orig_source_inst()
if (detail) {
detail->push_back(make_pair(HEALTH_WARN, msg));
}
- } else if ((osdmap.get_up_osd_features() & CEPH_FEATURE_SERVER_KRAKEN) &&
+ } else if (HAVE_FEATURE(osdmap.get_up_osd_features(), SERVER_KRAKEN) &&
!osdmap.test_flag(CEPH_OSDMAP_REQUIRE_KRAKEN)) {
string msg = "all OSDs are running kraken or later but the"
" 'require_kraken_osds' osdmap flag is not set";
if (detail) {
detail->push_back(make_pair(HEALTH_WARN, msg));
}
- } else if ((osdmap.get_up_osd_features() & CEPH_FEATURE_SERVER_JEWEL) &&
+ } else if (HAVE_FEATURE(osdmap.get_up_osd_features(), SERVER_JEWEL) &&
!osdmap.test_flag(CEPH_OSDMAP_REQUIRE_JEWEL)) {
string msg = "all OSDs are running jewel or later but the"
" 'require_jewel_osds' osdmap flag is not set";
if (!osdmap.test_flag(CEPH_OSDMAP_SORTBITWISE)) {
ss << "the sortbitwise flag must be set before require_jewel_osds";
err = -EPERM;
- } else if (osdmap.get_up_osd_features() & CEPH_FEATURE_SERVER_JEWEL) {
+ } else if (HAVE_FEATURE(osdmap.get_up_osd_features(), SERVER_JEWEL)) {
return prepare_set_flag(op, CEPH_OSDMAP_REQUIRE_JEWEL);
} else {
ss << "not all up OSDs have CEPH_FEATURE_SERVER_JEWEL feature";
if (!osdmap.test_flag(CEPH_OSDMAP_SORTBITWISE)) {
ss << "the sortbitwise flag must be set before require_kraken_osds";
err = -EPERM;
- } else if (osdmap.get_up_osd_features() & CEPH_FEATURE_SERVER_KRAKEN) {
+ } else if (HAVE_FEATURE(osdmap.get_up_osd_features(), SERVER_KRAKEN)) {
bool r = prepare_set_flag(op, CEPH_OSDMAP_REQUIRE_KRAKEN);
// ensure JEWEL is also set
pending_inc.new_flags |= CEPH_OSDMAP_REQUIRE_JEWEL;