Lines Matching refs:parent_sq

76 	struct throtl_service_queue *parent_sq;	/* the parent service_queue */
259 if (sq && sq->parent_sq)
560 sq->parent_sq = &td->service_queue;
562 sq->parent_sq = &blkg_to_tg(blkg->parent)->service_queue;
573 struct throtl_grp *parent_tg = sq_to_tg(tg->service_queue.parent_sq);
642 throtl_rb_first(struct throtl_service_queue *parent_sq)
646 n = rb_first_cached(&parent_sq->pending_tree);
654 struct throtl_service_queue *parent_sq)
656 rb_erase_cached(n, &parent_sq->pending_tree);
658 --parent_sq->nr_pending;
661 static void update_min_dispatch_time(struct throtl_service_queue *parent_sq)
665 tg = throtl_rb_first(parent_sq);
669 parent_sq->first_pending_disptime = tg->disptime;
674 struct throtl_service_queue *parent_sq = tg->service_queue.parent_sq;
675 struct rb_node **node = &parent_sq->pending_tree.rb_root.rb_node;
694 rb_insert_color_cached(&tg->rb_node, &parent_sq->pending_tree,
703 tg->service_queue.parent_sq->nr_pending++;
710 throtl_rb_erase(&tg->rb_node, tg->service_queue.parent_sq);
1149 struct throtl_service_queue *parent_sq = sq->parent_sq;
1150 struct throtl_grp *parent_tg = sq_to_tg(parent_sq);
1155 * @bio is being transferred from @tg to @parent_sq. Popping a bio
1156 * from @tg may put its reference and @parent_sq might end up
1158 * after @bio is transferred to @parent_sq.
1177 &parent_sq->queued[rw]);
1221 static int throtl_select_dispatch(struct throtl_service_queue *parent_sq)
1229 if (!parent_sq->nr_pending)
1232 tg = throtl_rb_first(parent_sq);
1277 struct throtl_service_queue *parent_sq;
1286 parent_sq = sq->parent_sq;
1312 if (parent_sq) {
1313 /* @parent_sq is another throl_grp, propagate dispatch */
1316 if (!throtl_schedule_next_dispatch(parent_sq, false)) {
1318 sq = parent_sq;
1456 throtl_schedule_next_dispatch(sq->parent_sq, true);
1851 struct throtl_service_queue *parent_sq;
1856 parent_sq = parent->service_queue.parent_sq;
1857 parent = sq_to_tg(parent_sq);
1934 tg = sq_to_tg(tg->service_queue.parent_sq);
2051 tg = sq_to_tg(tg->service_queue.parent_sq);
2225 struct throtl_service_queue *parent_sq;
2235 parent_sq = parent->service_queue.parent_sq;
2236 parent = sq_to_tg(parent_sq);
2316 sq = sq->parent_sq;
2344 throtl_schedule_next_dispatch(tg->service_queue.parent_sq, true);