diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/ceph/osdmap.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/net/ceph/osdmap.c b/net/ceph/osdmap.c index f552aa48fd9e..de73214b5d26 100644 --- a/net/ceph/osdmap.c +++ b/net/ceph/osdmap.c | |||
@@ -469,6 +469,22 @@ static struct ceph_pg_pool_info *__lookup_pg_pool(struct rb_root *root, int id) | |||
469 | return NULL; | 469 | return NULL; |
470 | } | 470 | } |
471 | 471 | ||
472 | const char *ceph_pg_pool_name_by_id(struct ceph_osdmap *map, u64 id) | ||
473 | { | ||
474 | struct ceph_pg_pool_info *pi; | ||
475 | |||
476 | if (id == CEPH_NOPOOL) | ||
477 | return NULL; | ||
478 | |||
479 | if (WARN_ON_ONCE(id > (u64) INT_MAX)) | ||
480 | return NULL; | ||
481 | |||
482 | pi = __lookup_pg_pool(&map->pg_pools, (int) id); | ||
483 | |||
484 | return pi ? pi->name : NULL; | ||
485 | } | ||
486 | EXPORT_SYMBOL(ceph_pg_pool_name_by_id); | ||
487 | |||
472 | int ceph_pg_poolid_by_name(struct ceph_osdmap *map, const char *name) | 488 | int ceph_pg_poolid_by_name(struct ceph_osdmap *map, const char *name) |
473 | { | 489 | { |
474 | struct rb_node *rbp; | 490 | struct rb_node *rbp; |