return false;
}
+ if (osdmap.get_crush_node_flags(i) & CEPH_OSD_NODOWN) {
+ dout(5) << __func__ << " osd." << i
+ << " is marked as nodown via a crush node flag, "
+ << "will not mark it down" << dendl;
+ return false;
+ }
+
int num_osds = osdmap.get_num_osds();
if (num_osds == 0) {
dout(5) << __func__ << " no osds" << dendl;
return false;
}
+ if (osdmap.get_crush_node_flags(i) & CEPH_OSD_NOUP) {
+ dout(5) << __func__ << " osd." << i
+ << " is marked as noup via a crush node flag, "
+ << "will not mark it up" << dendl;
+ return false;
+ }
+
return true;
}
return false;
}
+ if (osdmap.get_crush_node_flags(i) & CEPH_OSD_NOOUT) {
+ dout(5) << __func__ << " osd." << i
+ << " is marked as noout via a crush node flag, "
+ << "will not mark it out" << dendl;
+ return false;
+ }
+
int num_osds = osdmap.get_num_osds();
if (num_osds == 0) {
dout(5) << __func__ << " no osds" << dendl;
return false;
}
+ if (osdmap.get_crush_node_flags(i) & CEPH_OSD_NOIN) {
+ dout(5) << __func__ << " osd." << i
+ << " is marked as noin via a crush node flag, "
+ << "will not mark it in" << dendl;
+ return false;
+ }
+
return true;
}