Lines Matching refs:throtl_grp

70 	struct throtl_grp	*tg;		/* tg this qnode belongs to */
98 #define rb_entry_tg(node) rb_entry((node), struct throtl_grp, rb_node)
106 struct throtl_grp { struct
227 static inline struct throtl_grp *pd_to_tg(struct blkg_policy_data *pd) in pd_to_tg()
229 return pd ? container_of(pd, struct throtl_grp, pd) : NULL; in pd_to_tg()
232 static inline struct throtl_grp *blkg_to_tg(struct blkcg_gq *blkg) in blkg_to_tg()
237 static inline struct blkcg_gq *tg_to_blkg(struct throtl_grp *tg) in tg_to_blkg()
249 static struct throtl_grp *sq_to_tg(struct throtl_service_queue *sq) in sq_to_tg()
252 return container_of(sq, struct throtl_grp, service_queue); in sq_to_tg()
266 struct throtl_grp *tg = sq_to_tg(sq); in sq_to_td()
292 static uint64_t tg_bps_limit(struct throtl_grp *tg, int rw) in tg_bps_limit()
322 static unsigned int tg_iops_limit(struct throtl_grp *tg, int rw) in tg_iops_limit()
367 struct throtl_grp *__tg = sq_to_tg((sq)); \
389 static void throtl_qnode_init(struct throtl_qnode *qn, struct throtl_grp *tg) in throtl_qnode_init()
448 struct throtl_grp **tg_to_put) in throtl_pop_queued()
485 struct throtl_grp *tg; in throtl_pd_alloc()
520 struct throtl_grp *tg = pd_to_tg(pd); in throtl_pd_init()
549 static void tg_update_has_rules(struct throtl_grp *tg) in tg_update_has_rules()
551 struct throtl_grp *parent_tg = sq_to_tg(tg->service_queue.parent_sq); in tg_update_has_rules()
564 struct throtl_grp *tg = pd_to_tg(pd); in throtl_pd_online()
580 struct throtl_grp *tg = blkg_to_tg(blkg); in blk_throtl_update_limit_valid()
596 struct throtl_grp *tg = pd_to_tg(pd); in throtl_pd_offline()
611 struct throtl_grp *tg = pd_to_tg(pd); in throtl_pd_free()
617 static struct throtl_grp *
642 struct throtl_grp *tg; in update_min_dispatch_time()
651 static void tg_service_queue_add(struct throtl_grp *tg) in tg_service_queue_add()
656 struct throtl_grp *__tg; in tg_service_queue_add()
677 static void __throtl_enqueue_tg(struct throtl_grp *tg) in __throtl_enqueue_tg()
684 static void throtl_enqueue_tg(struct throtl_grp *tg) in throtl_enqueue_tg()
690 static void __throtl_dequeue_tg(struct throtl_grp *tg) in __throtl_dequeue_tg()
696 static void throtl_dequeue_tg(struct throtl_grp *tg) in throtl_dequeue_tg()
759 static inline void throtl_start_new_slice_with_credit(struct throtl_grp *tg, in throtl_start_new_slice_with_credit()
781 static inline void throtl_start_new_slice(struct throtl_grp *tg, bool rw) in throtl_start_new_slice()
793 static inline void throtl_set_slice_end(struct throtl_grp *tg, bool rw, in throtl_set_slice_end()
799 static inline void throtl_extend_slice(struct throtl_grp *tg, bool rw, in throtl_extend_slice()
810 static bool throtl_slice_used(struct throtl_grp *tg, bool rw) in throtl_slice_used()
819 static inline void throtl_trim_slice(struct throtl_grp *tg, bool rw) in throtl_trim_slice()
878 static bool tg_with_in_iops_limit(struct throtl_grp *tg, struct bio *bio, in tg_with_in_iops_limit()
920 static bool tg_with_in_bps_limit(struct throtl_grp *tg, struct bio *bio, in tg_with_in_bps_limit()
967 static bool tg_may_dispatch(struct throtl_grp *tg, struct bio *bio, in tg_may_dispatch()
1024 static void throtl_charge_bio(struct throtl_grp *tg, struct bio *bio) in throtl_charge_bio()
1055 struct throtl_grp *tg) in throtl_add_bio_tg()
1078 static void tg_update_disptime(struct throtl_grp *tg) in tg_update_disptime()
1104 static void start_parent_slice_with_credit(struct throtl_grp *child_tg, in start_parent_slice_with_credit()
1105 struct throtl_grp *parent_tg, bool rw) in start_parent_slice_with_credit()
1114 static void tg_dispatch_one_bio(struct throtl_grp *tg, bool rw) in tg_dispatch_one_bio()
1118 struct throtl_grp *parent_tg = sq_to_tg(parent_sq); in tg_dispatch_one_bio()
1119 struct throtl_grp *tg_to_put = NULL; in tg_dispatch_one_bio()
1156 static int throtl_dispatch_tg(struct throtl_grp *tg) in throtl_dispatch_tg()
1194 struct throtl_grp *tg = throtl_rb_first(parent_sq); in throtl_select_dispatch()
1219 struct throtl_grp *this_tg);
1238 struct throtl_grp *tg = sq_to_tg(sq); in throtl_pending_timer_fn()
1333 struct throtl_grp *tg = pd_to_tg(pd); in tg_prfill_conf_u64()
1344 struct throtl_grp *tg = pd_to_tg(pd); in tg_prfill_conf_uint()
1366 static void tg_conf_updated(struct throtl_grp *tg, bool global) in tg_conf_updated()
1386 struct throtl_grp *this_tg = blkg_to_tg(blkg); in tg_conf_updated()
1387 struct throtl_grp *parent_tg; in tg_conf_updated()
1427 struct throtl_grp *tg; in tg_set_conf()
1470 .private = offsetof(struct throtl_grp, bps[READ][LIMIT_MAX]),
1476 .private = offsetof(struct throtl_grp, bps[WRITE][LIMIT_MAX]),
1482 .private = offsetof(struct throtl_grp, iops[READ][LIMIT_MAX]),
1488 .private = offsetof(struct throtl_grp, iops[WRITE][LIMIT_MAX]),
1518 struct throtl_grp *tg = pd_to_tg(pd); in tg_prfill_limit()
1590 struct throtl_grp *tg; in tg_set_limit()
1739 static unsigned long __tg_last_low_overflow_time(struct throtl_grp *tg) in __tg_last_low_overflow_time()
1751 static unsigned long tg_last_low_overflow_time(struct throtl_grp *tg) in tg_last_low_overflow_time()
1754 struct throtl_grp *parent = tg; in tg_last_low_overflow_time()
1778 static bool throtl_tg_is_idle(struct throtl_grp *tg) in throtl_tg_is_idle()
1804 static bool throtl_tg_can_upgrade(struct throtl_grp *tg) in throtl_tg_can_upgrade()
1831 static bool throtl_hierarchy_can_upgrade(struct throtl_grp *tg) in throtl_hierarchy_can_upgrade()
1844 struct throtl_grp *this_tg) in throtl_can_upgrade()
1857 struct throtl_grp *tg = blkg_to_tg(blkg); in throtl_can_upgrade()
1872 static void throtl_upgrade_check(struct throtl_grp *tg) in throtl_upgrade_check()
1903 struct throtl_grp *tg = blkg_to_tg(blkg); in throtl_upgrade_state()
1930 static bool throtl_tg_can_downgrade(struct throtl_grp *tg) in throtl_tg_can_downgrade()
1948 static bool throtl_hierarchy_can_downgrade(struct throtl_grp *tg) in throtl_hierarchy_can_downgrade()
1960 static void throtl_downgrade_check(struct throtl_grp *tg) in throtl_downgrade_check()
2021 static void blk_throtl_update_idletime(struct throtl_grp *tg) in blk_throtl_update_idletime()
2121 struct throtl_grp *tg = blkg_to_tg(blkg ?: q->root_blkg); in blk_throtl_bio()
2258 struct throtl_grp *tg; in blk_throtl_bio_endio()
2315 struct throtl_grp *tg; in tg_drain_bios()