Lines Matching refs:pg

693 	struct ceph_pg_mapping *pg;  in alloc_pg_mapping()  local
695 pg = kmalloc(sizeof(*pg) + payload_len, GFP_NOIO); in alloc_pg_mapping()
696 if (!pg) in alloc_pg_mapping()
699 RB_CLEAR_NODE(&pg->node); in alloc_pg_mapping()
700 return pg; in alloc_pg_mapping()
703 static void free_pg_mapping(struct ceph_pg_mapping *pg) in free_pg_mapping() argument
705 WARN_ON(!RB_EMPTY_NODE(&pg->node)); in free_pg_mapping()
707 kfree(pg); in free_pg_mapping()
1136 struct ceph_pg_mapping *pg = in ceph_osdmap_destroy() local
1139 erase_pg_mapping(&map->pg_temp, pg); in ceph_osdmap_destroy()
1140 free_pg_mapping(pg); in ceph_osdmap_destroy()
1143 struct ceph_pg_mapping *pg = in ceph_osdmap_destroy() local
1146 erase_pg_mapping(&map->primary_temp, pg); in ceph_osdmap_destroy()
1147 free_pg_mapping(pg); in ceph_osdmap_destroy()
1150 struct ceph_pg_mapping *pg = in ceph_osdmap_destroy() local
1153 rb_erase(&pg->node, &map->pg_upmap); in ceph_osdmap_destroy()
1154 kfree(pg); in ceph_osdmap_destroy()
1157 struct ceph_pg_mapping *pg = in ceph_osdmap_destroy() local
1160 rb_erase(&pg->node, &map->pg_upmap_items); in ceph_osdmap_destroy()
1161 kfree(pg); in ceph_osdmap_destroy()
1383 struct ceph_pg_mapping *pg;
1391 pg = lookup_pg_mapping(mapping_root, &pgid);
1392 if (pg) {
1394 erase_pg_mapping(mapping_root, pg);
1395 free_pg_mapping(pg);
1399 pg = fn(p, end, incremental);
1400 if (IS_ERR(pg))
1401 return PTR_ERR(pg);
1403 if (pg) {
1404 pg->pgid = pgid; /* struct */
1405 insert_pg_mapping(mapping_root, pg);
1419 struct ceph_pg_mapping *pg; in __decode_pg_temp() local
1425 if (len > (SIZE_MAX - sizeof(*pg)) / sizeof(u32)) in __decode_pg_temp()
1429 pg = alloc_pg_mapping(len * sizeof(u32)); in __decode_pg_temp()
1430 if (!pg) in __decode_pg_temp()
1433 pg->pg_temp.len = len; in __decode_pg_temp()
1435 pg->pg_temp.osds[i] = ceph_decode_32(p); in __decode_pg_temp()
1437 return pg; in __decode_pg_temp()
1458 struct ceph_pg_mapping *pg; in __decode_primary_temp() local
1465 pg = alloc_pg_mapping(0); in __decode_primary_temp()
1466 if (!pg) in __decode_primary_temp()
1469 pg->primary_temp.osd = osd; in __decode_primary_temp()
1470 return pg; in __decode_primary_temp()
1604 struct ceph_pg_mapping *pg; in __decode_pg_upmap_items() local
1608 if (len > (SIZE_MAX - sizeof(*pg)) / (2 * sizeof(u32))) in __decode_pg_upmap_items()
1612 pg = alloc_pg_mapping(2 * len * sizeof(u32)); in __decode_pg_upmap_items()
1613 if (!pg) in __decode_pg_upmap_items()
1616 pg->pg_upmap_items.len = len; in __decode_pg_upmap_items()
1618 pg->pg_upmap_items.from_to[i][0] = ceph_decode_32(p); in __decode_pg_upmap_items()
1619 pg->pg_upmap_items.from_to[i][1] = ceph_decode_32(p); in __decode_pg_upmap_items()
1622 return pg; in __decode_pg_upmap_items()
2580 struct ceph_pg_mapping *pg; in apply_upmap() local
2583 pg = lookup_pg_mapping(&osdmap->pg_upmap, pgid); in apply_upmap()
2584 if (pg) { in apply_upmap()
2586 for (i = 0; i < pg->pg_upmap.len; i++) { in apply_upmap()
2587 int osd = pg->pg_upmap.osds[i]; in apply_upmap()
2596 for (i = 0; i < pg->pg_upmap.len; i++) in apply_upmap()
2597 raw->osds[i] = pg->pg_upmap.osds[i]; in apply_upmap()
2598 raw->size = pg->pg_upmap.len; in apply_upmap()
2602 pg = lookup_pg_mapping(&osdmap->pg_upmap_items, pgid); in apply_upmap()
2603 if (pg) { in apply_upmap()
2608 for (i = 0; i < pg->pg_upmap_items.len; i++) { in apply_upmap()
2609 int from = pg->pg_upmap_items.from_to[i][0]; in apply_upmap()
2610 int to = pg->pg_upmap_items.from_to[i][1]; in apply_upmap()
2759 struct ceph_pg_mapping *pg; in get_temp_osds() local
2765 pg = lookup_pg_mapping(&osdmap->pg_temp, pgid); in get_temp_osds()
2766 if (pg) { in get_temp_osds()
2767 for (i = 0; i < pg->pg_temp.len; i++) { in get_temp_osds()
2768 if (ceph_osd_is_down(osdmap, pg->pg_temp.osds[i])) { in get_temp_osds()
2774 temp->osds[temp->size++] = pg->pg_temp.osds[i]; in get_temp_osds()
2788 pg = lookup_pg_mapping(&osdmap->primary_temp, pgid); in get_temp_osds()
2789 if (pg) in get_temp_osds()
2790 temp->primary = pg->primary_temp.osd; in get_temp_osds()