Loading net/ceph/debugfs.c +14 −12 Original line number Diff line number Diff line Loading @@ -53,34 +53,36 @@ static int osdmap_show(struct seq_file *s, void *p) { int i; struct ceph_client *client = s->private; struct ceph_osdmap *map = client->osdc.osdmap; struct rb_node *n; if (client->osdc.osdmap == NULL) if (map == NULL) return 0; seq_printf(s, "epoch %d\n", client->osdc.osdmap->epoch); seq_printf(s, "epoch %d\n", map->epoch); seq_printf(s, "flags%s%s\n", (client->osdc.osdmap->flags & CEPH_OSDMAP_NEARFULL) ? " NEARFULL" : "", (client->osdc.osdmap->flags & CEPH_OSDMAP_FULL) ? " FULL" : ""); for (n = rb_first(&client->osdc.osdmap->pg_pools); n; n = rb_next(n)) { (map->flags & CEPH_OSDMAP_NEARFULL) ? " NEARFULL" : "", (map->flags & CEPH_OSDMAP_FULL) ? " FULL" : ""); for (n = rb_first(&map->pg_pools); n; n = rb_next(n)) { struct ceph_pg_pool_info *pool = rb_entry(n, struct ceph_pg_pool_info, node); seq_printf(s, "pg_pool %llu pg_num %d / %d\n", (unsigned long long)pool->id, pool->pg_num, pool->pg_num_mask); } for (i = 0; i < client->osdc.osdmap->max_osd; i++) { struct ceph_entity_addr *addr = &client->osdc.osdmap->osd_addr[i]; int state = client->osdc.osdmap->osd_state[i]; for (i = 0; i < map->max_osd; i++) { struct ceph_entity_addr *addr = &map->osd_addr[i]; int state = map->osd_state[i]; char sb[64]; seq_printf(s, "\tosd%d\t%s\t%3d%%\t(%s)\n", i, ceph_pr_addr(&addr->in_addr), ((client->osdc.osdmap->osd_weight[i]*100) >> 16), ((map->osd_weight[i]*100) >> 16), ceph_osdmap_state_str(sb, sizeof(sb), state)); } return 0; } Loading Loading
net/ceph/debugfs.c +14 −12 Original line number Diff line number Diff line Loading @@ -53,34 +53,36 @@ static int osdmap_show(struct seq_file *s, void *p) { int i; struct ceph_client *client = s->private; struct ceph_osdmap *map = client->osdc.osdmap; struct rb_node *n; if (client->osdc.osdmap == NULL) if (map == NULL) return 0; seq_printf(s, "epoch %d\n", client->osdc.osdmap->epoch); seq_printf(s, "epoch %d\n", map->epoch); seq_printf(s, "flags%s%s\n", (client->osdc.osdmap->flags & CEPH_OSDMAP_NEARFULL) ? " NEARFULL" : "", (client->osdc.osdmap->flags & CEPH_OSDMAP_FULL) ? " FULL" : ""); for (n = rb_first(&client->osdc.osdmap->pg_pools); n; n = rb_next(n)) { (map->flags & CEPH_OSDMAP_NEARFULL) ? " NEARFULL" : "", (map->flags & CEPH_OSDMAP_FULL) ? " FULL" : ""); for (n = rb_first(&map->pg_pools); n; n = rb_next(n)) { struct ceph_pg_pool_info *pool = rb_entry(n, struct ceph_pg_pool_info, node); seq_printf(s, "pg_pool %llu pg_num %d / %d\n", (unsigned long long)pool->id, pool->pg_num, pool->pg_num_mask); } for (i = 0; i < client->osdc.osdmap->max_osd; i++) { struct ceph_entity_addr *addr = &client->osdc.osdmap->osd_addr[i]; int state = client->osdc.osdmap->osd_state[i]; for (i = 0; i < map->max_osd; i++) { struct ceph_entity_addr *addr = &map->osd_addr[i]; int state = map->osd_state[i]; char sb[64]; seq_printf(s, "\tosd%d\t%s\t%3d%%\t(%s)\n", i, ceph_pr_addr(&addr->in_addr), ((client->osdc.osdmap->osd_weight[i]*100) >> 16), ((map->osd_weight[i]*100) >> 16), ceph_osdmap_state_str(sb, sizeof(sb), state)); } return 0; } Loading