Lines Matching full:acting
427 ceph_osds_init(&t->acting); in target_init()
447 ceph_osds_copy(&dest->acting, &src->acting); in target_copy()
1539 static int pick_random_replica(const struct ceph_osds *acting) in pick_random_replica() argument
1541 int i = get_random_u32_below(acting->size); in pick_random_replica()
1544 acting->osds[i], acting->primary); in pick_random_replica()
1554 const struct ceph_osds *acting) in pick_closest_replica() argument
1562 acting->osds[i], in pick_closest_replica()
1571 } while (++i < acting->size); in pick_closest_replica()
1574 acting->osds[best_i], best_locality, acting->primary); in pick_closest_replica()
1590 struct ceph_osds up, acting; in calc_target() local
1640 ceph_pg_to_up_acting_osds(osdc->osdmap, pi, &pgid, &up, &acting); in calc_target()
1642 ceph_is_new_interval(&t->acting, in calc_target()
1643 &acting, in calc_target()
1664 ceph_osds_changed(&t->acting, &acting, in calc_target()
1672 ceph_osds_copy(&t->acting, &acting); in calc_target()
1684 acting.size > 1) { in calc_target()
1687 WARN_ON(!is_read || acting.osds[0] != acting.primary); in calc_target()
1689 pos = pick_random_replica(&acting); in calc_target()
1691 pos = pick_closest_replica(osdc, &acting); in calc_target()
1693 t->osd = acting.osds[pos]; in calc_target()
1696 t->osd = acting.primary; in calc_target()