Lines Matching refs:parent_sq

75 	struct throtl_service_queue *parent_sq;	/* the parent service_queue */  member
255 if (sq && sq->parent_sq) in sq_to_tg()
556 sq->parent_sq = &td->service_queue; in throtl_pd_init()
558 sq->parent_sq = &blkg_to_tg(blkg->parent)->service_queue; in throtl_pd_init()
569 struct throtl_grp *parent_tg = sq_to_tg(tg->service_queue.parent_sq); in tg_update_has_rules()
638 throtl_rb_first(struct throtl_service_queue *parent_sq) in throtl_rb_first() argument
642 n = rb_first_cached(&parent_sq->pending_tree); in throtl_rb_first()
650 struct throtl_service_queue *parent_sq) in throtl_rb_erase() argument
652 rb_erase_cached(n, &parent_sq->pending_tree); in throtl_rb_erase()
654 --parent_sq->nr_pending; in throtl_rb_erase()
657 static void update_min_dispatch_time(struct throtl_service_queue *parent_sq) in update_min_dispatch_time() argument
661 tg = throtl_rb_first(parent_sq); in update_min_dispatch_time()
665 parent_sq->first_pending_disptime = tg->disptime; in update_min_dispatch_time()
670 struct throtl_service_queue *parent_sq = tg->service_queue.parent_sq; in tg_service_queue_add() local
671 struct rb_node **node = &parent_sq->pending_tree.rb_root.rb_node; in tg_service_queue_add()
690 rb_insert_color_cached(&tg->rb_node, &parent_sq->pending_tree, in tg_service_queue_add()
699 tg->service_queue.parent_sq->nr_pending++; in throtl_enqueue_tg()
706 throtl_rb_erase(&tg->rb_node, tg->service_queue.parent_sq); in throtl_dequeue_tg()
1139 struct throtl_service_queue *parent_sq = sq->parent_sq; in tg_dispatch_one_bio() local
1140 struct throtl_grp *parent_tg = sq_to_tg(parent_sq); in tg_dispatch_one_bio()
1167 &parent_sq->queued[rw]); in tg_dispatch_one_bio()
1211 static int throtl_select_dispatch(struct throtl_service_queue *parent_sq) in throtl_select_dispatch() argument
1219 if (!parent_sq->nr_pending) in throtl_select_dispatch()
1222 tg = throtl_rb_first(parent_sq); in throtl_select_dispatch()
1267 struct throtl_service_queue *parent_sq; in throtl_pending_timer_fn() local
1276 parent_sq = sq->parent_sq; in throtl_pending_timer_fn()
1302 if (parent_sq) { in throtl_pending_timer_fn()
1306 if (!throtl_schedule_next_dispatch(parent_sq, false)) { in throtl_pending_timer_fn()
1308 sq = parent_sq; in throtl_pending_timer_fn()
1444 throtl_schedule_next_dispatch(sq->parent_sq, true); in tg_conf_updated()
1805 struct throtl_service_queue *parent_sq; in tg_last_low_overflow_time() local
1810 parent_sq = parent->service_queue.parent_sq; in tg_last_low_overflow_time()
1811 parent = sq_to_tg(parent_sq); in tg_last_low_overflow_time()
1888 tg = sq_to_tg(tg->service_queue.parent_sq); in throtl_hierarchy_can_upgrade()
2005 tg = sq_to_tg(tg->service_queue.parent_sq); in throtl_hierarchy_can_downgrade()
2249 sq = sq->parent_sq; in blk_throtl_bio()
2277 throtl_schedule_next_dispatch(tg->service_queue.parent_sq, true); in blk_throtl_bio()