ceph: use rbtree for pg pools; decode new osdmap format
[deliverable/linux.git] / fs / ceph / debugfs.c
index 1a47b5c25b5fb3707d39696e1dfbe82ec60f9d26..e159f14151103a6ce97d5f12c4184207cdb08f4f 100644 (file)
@@ -78,6 +78,7 @@ static int osdmap_show(struct seq_file *s, void *p)
 {
        int i;
        struct ceph_client *client = s->private;
+       struct rb_node *n;
 
        if (client->osdc.osdmap == NULL)
                return 0;
@@ -87,11 +88,11 @@ static int osdmap_show(struct seq_file *s, void *p)
                   " NEARFULL" : "",
                   (client->osdc.osdmap->flags & CEPH_OSDMAP_FULL) ?
                   " FULL" : "");
-       for (i = 0; i < client->osdc.osdmap->num_pools; i++) {
+       for (n = rb_first(&client->osdc.osdmap->pg_pools); n; n = rb_next(n)) {
                struct ceph_pg_pool_info *pool =
-                       &client->osdc.osdmap->pg_pool[i];
+                       rb_entry(n, struct ceph_pg_pool_info, node);
                seq_printf(s, "pg_pool %d pg_num %d / %d, lpg_num %d / %d\n",
-                          i, pool->v.pg_num, pool->pg_num_mask,
+                          pool->id, pool->v.pg_num, pool->pg_num_mask,
                           pool->v.lpg_num, pool->lpg_num_mask);
        }
        for (i = 0; i < client->osdc.osdmap->max_osd; i++) {
This page took 0.026442 seconds and 5 git commands to generate.