Lines Matching refs:parent
56 * the parent, they're popped in round-robin order so that no single source
64 * belongs to a throtl_grp and gets queued on itself or the parent, so
76 struct throtl_service_queue *parent_sq; /* the parent service_queue */
96 THROTL_TG_PENDING = 1 << 0, /* on parent's pending tree */
125 * dispatched from this throtl_grp into its parent and will compete
126 * with the sibling qnode_on_parents and the parent's
306 if (cgroup_subsys_on_dfl(io_cgrp_subsys) && !blkg->parent)
336 if (cgroup_subsys_on_dfl(io_cgrp_subsys) && !blkg->parent)
561 if (cgroup_subsys_on_dfl(io_cgrp_subsys) && blkg->parent)
562 sq->parent_sq = &blkg_to_tg(blkg->parent)->service_queue;
569 * parent's has_rules[] is guaranteed to be correct.
676 struct rb_node *parent = NULL;
682 parent = *node;
683 __tg = rb_entry_tg(parent);
686 node = &parent->rb_left;
688 node = &parent->rb_right;
693 rb_link_node(&tg->rb_node, parent, node);
1166 * If our parent is another tg, we just need to transfer @bio to
1167 * the parent using throtl_add_bio_tg(). If our parent is
1263 * dispatches bio's from the children throtl_grps to the parent
1266 * If the parent's parent is another throtl_grp, dispatching is propagated
1428 if (!cgroup_subsys_on_dfl(io_cgrp_subsys) || !blkg->parent ||
1429 !blkg->parent->parent)
1431 parent_tg = blkg_to_tg(blkg->parent);
1852 struct throtl_grp *parent = tg;
1856 parent_sq = parent->service_queue.parent_sq;
1857 parent = sq_to_tg(parent_sq);
1858 if (!parent)
1862 * The parent doesn't have low limit, it always reaches low
1865 if (!parent->bps[READ][LIMIT_LOW] &&
1866 !parent->iops[READ][LIMIT_LOW] &&
1867 !parent->bps[WRITE][LIMIT_LOW] &&
1868 !parent->iops[WRITE][LIMIT_LOW])
1870 if (time_after(__tg_last_low_overflow_time(parent), ret))
1871 ret = __tg_last_low_overflow_time(parent);
1935 if (!tg || !tg_to_blkg(tg)->parent)
2052 if (!tg || !tg_to_blkg(tg)->parent)
2224 struct throtl_grp *parent = blkg_to_tg(blkg);
2229 if (!parent->has_rules[rw])
2232 atomic_inc(&parent->io_split_cnt[rw]);
2233 atomic_inc(&parent->last_io_split_cnt[rw]);
2235 parent_sq = parent->service_queue.parent_sq;
2236 parent = sq_to_tg(parent_sq);
2237 } while (parent);