Lines Matching refs:pg

612 	struct ceph_pg_mapping *pg;  in alloc_pg_mapping()  local
614 pg = kmalloc(sizeof(*pg) + payload_len, GFP_NOIO); in alloc_pg_mapping()
615 if (!pg) in alloc_pg_mapping()
618 RB_CLEAR_NODE(&pg->node); in alloc_pg_mapping()
619 return pg; in alloc_pg_mapping()
622 static void free_pg_mapping(struct ceph_pg_mapping *pg) in free_pg_mapping() argument
624 WARN_ON(!RB_EMPTY_NODE(&pg->node)); in free_pg_mapping()
626 kfree(pg); in free_pg_mapping()
943 struct ceph_pg_mapping *pg = in ceph_osdmap_destroy() local
946 erase_pg_mapping(&map->pg_temp, pg); in ceph_osdmap_destroy()
947 free_pg_mapping(pg); in ceph_osdmap_destroy()
950 struct ceph_pg_mapping *pg = in ceph_osdmap_destroy() local
953 erase_pg_mapping(&map->primary_temp, pg); in ceph_osdmap_destroy()
954 free_pg_mapping(pg); in ceph_osdmap_destroy()
957 struct ceph_pg_mapping *pg = in ceph_osdmap_destroy() local
960 rb_erase(&pg->node, &map->pg_upmap); in ceph_osdmap_destroy()
961 kfree(pg); in ceph_osdmap_destroy()
964 struct ceph_pg_mapping *pg = in ceph_osdmap_destroy() local
967 rb_erase(&pg->node, &map->pg_upmap_items); in ceph_osdmap_destroy()
968 kfree(pg); in ceph_osdmap_destroy()
1195 struct ceph_pg_mapping *pg;
1203 pg = lookup_pg_mapping(mapping_root, &pgid);
1204 if (pg) {
1206 erase_pg_mapping(mapping_root, pg);
1207 free_pg_mapping(pg);
1211 pg = fn(p, end, incremental);
1212 if (IS_ERR(pg))
1213 return PTR_ERR(pg);
1215 if (pg) {
1216 pg->pgid = pgid; /* struct */
1217 insert_pg_mapping(mapping_root, pg);
1231 struct ceph_pg_mapping *pg; in __decode_pg_temp() local
1237 if (len > (SIZE_MAX - sizeof(*pg)) / sizeof(u32)) in __decode_pg_temp()
1241 pg = alloc_pg_mapping(len * sizeof(u32)); in __decode_pg_temp()
1242 if (!pg) in __decode_pg_temp()
1245 pg->pg_temp.len = len; in __decode_pg_temp()
1247 pg->pg_temp.osds[i] = ceph_decode_32(p); in __decode_pg_temp()
1249 return pg; in __decode_pg_temp()
1270 struct ceph_pg_mapping *pg; in __decode_primary_temp() local
1277 pg = alloc_pg_mapping(0); in __decode_primary_temp()
1278 if (!pg) in __decode_primary_temp()
1281 pg->primary_temp.osd = osd; in __decode_primary_temp()
1282 return pg; in __decode_primary_temp()
1416 struct ceph_pg_mapping *pg; in __decode_pg_upmap_items() local
1420 if (len > (SIZE_MAX - sizeof(*pg)) / (2 * sizeof(u32))) in __decode_pg_upmap_items()
1424 pg = alloc_pg_mapping(2 * len * sizeof(u32)); in __decode_pg_upmap_items()
1425 if (!pg) in __decode_pg_upmap_items()
1428 pg->pg_upmap_items.len = len; in __decode_pg_upmap_items()
1430 pg->pg_upmap_items.from_to[i][0] = ceph_decode_32(p); in __decode_pg_upmap_items()
1431 pg->pg_upmap_items.from_to[i][1] = ceph_decode_32(p); in __decode_pg_upmap_items()
1434 return pg; in __decode_pg_upmap_items()
2373 struct ceph_pg_mapping *pg; in apply_upmap() local
2376 pg = lookup_pg_mapping(&osdmap->pg_upmap, pgid); in apply_upmap()
2377 if (pg) { in apply_upmap()
2379 for (i = 0; i < pg->pg_upmap.len; i++) { in apply_upmap()
2380 int osd = pg->pg_upmap.osds[i]; in apply_upmap()
2389 for (i = 0; i < pg->pg_upmap.len; i++) in apply_upmap()
2390 raw->osds[i] = pg->pg_upmap.osds[i]; in apply_upmap()
2391 raw->size = pg->pg_upmap.len; in apply_upmap()
2395 pg = lookup_pg_mapping(&osdmap->pg_upmap_items, pgid); in apply_upmap()
2396 if (pg) { in apply_upmap()
2401 for (i = 0; i < pg->pg_upmap_items.len; i++) { in apply_upmap()
2402 int from = pg->pg_upmap_items.from_to[i][0]; in apply_upmap()
2403 int to = pg->pg_upmap_items.from_to[i][1]; in apply_upmap()
2552 struct ceph_pg_mapping *pg; in get_temp_osds() local
2558 pg = lookup_pg_mapping(&osdmap->pg_temp, pgid); in get_temp_osds()
2559 if (pg) { in get_temp_osds()
2560 for (i = 0; i < pg->pg_temp.len; i++) { in get_temp_osds()
2561 if (ceph_osd_is_down(osdmap, pg->pg_temp.osds[i])) { in get_temp_osds()
2567 temp->osds[temp->size++] = pg->pg_temp.osds[i]; in get_temp_osds()
2581 pg = lookup_pg_mapping(&osdmap->primary_temp, pgid); in get_temp_osds()
2582 if (pg) in get_temp_osds()
2583 temp->primary = pg->primary_temp.osd; in get_temp_osds()