Lines Matching refs:ioc_gq
458 struct ioc_gq { struct
546 struct ioc_gq *ancestors[]; argument
570 struct ioc_gq *iocg;
680 static struct ioc_gq *pd_to_iocg(struct blkg_policy_data *pd) in pd_to_iocg()
682 return pd ? container_of(pd, struct ioc_gq, pd) : NULL; in pd_to_iocg()
685 static struct ioc_gq *blkg_to_iocg(struct blkcg_gq *blkg) in blkg_to_iocg()
690 static struct blkcg_gq *iocg_to_blkg(struct ioc_gq *iocg) in iocg_to_blkg()
718 static void iocg_commit_bio(struct ioc_gq *iocg, struct bio *bio, in iocg_commit_bio()
731 static void iocg_lock(struct ioc_gq *iocg, bool lock_ioc, unsigned long *flags) in iocg_lock()
741 static void iocg_unlock(struct ioc_gq *iocg, bool unlock_ioc, unsigned long *flags) in iocg_unlock()
1063 static void __propagate_weights(struct ioc_gq *iocg, u32 active, u32 inuse, in __propagate_weights()
1091 struct ioc_gq *parent = iocg->ancestors[lvl]; in __propagate_weights()
1092 struct ioc_gq *child = iocg->ancestors[lvl + 1]; in __propagate_weights()
1138 static void propagate_weights(struct ioc_gq *iocg, u32 active, u32 inuse, in propagate_weights()
1145 static void current_hweight(struct ioc_gq *iocg, u32 *hw_activep, u32 *hw_inusep) in current_hweight()
1171 struct ioc_gq *parent = iocg->ancestors[lvl]; in current_hweight()
1172 struct ioc_gq *child = iocg->ancestors[lvl + 1]; in current_hweight()
1203 static u32 current_hweight_max(struct ioc_gq *iocg) in current_hweight_max()
1213 struct ioc_gq *parent = iocg->ancestors[lvl]; in current_hweight_max()
1214 struct ioc_gq *child = iocg->ancestors[lvl + 1]; in current_hweight_max()
1225 static void weight_updated(struct ioc_gq *iocg, struct ioc_now *now) in weight_updated()
1240 static bool iocg_activate(struct ioc_gq *iocg, struct ioc_now *now) in iocg_activate()
1325 static bool iocg_kick_delay(struct ioc_gq *iocg, struct ioc_now *now) in iocg_kick_delay()
1382 static void iocg_incur_debt(struct ioc_gq *iocg, u64 abs_cost, in iocg_incur_debt()
1407 static void iocg_pay_debt(struct ioc_gq *iocg, u64 abs_vpay, in iocg_pay_debt()
1461 static void iocg_kick_waitq(struct ioc_gq *iocg, bool pay_debt, in iocg_kick_waitq()
1546 struct ioc_gq *iocg = container_of(timer, struct ioc_gq, waitq_timer); in iocg_waitq_timer_fn()
1600 static bool iocg_is_idle(struct ioc_gq *iocg) in iocg_is_idle()
1621 static void iocg_build_inner_walk(struct ioc_gq *iocg, in iocg_build_inner_walk()
1636 struct ioc_gq *inner = iocg->ancestors[lvl]; in iocg_build_inner_walk()
1644 static void iocg_flush_stat_upward(struct ioc_gq *iocg) in iocg_flush_stat_upward()
1664 static void iocg_flush_stat_leaf(struct ioc_gq *iocg, struct ioc_now *now) in iocg_flush_stat_leaf()
1691 struct ioc_gq *iocg, *tiocg; in iocg_flush_stat()
1711 static u32 hweight_after_donation(struct ioc_gq *iocg, u32 old_hwi, u32 hwm, in hweight_after_donation()
1821 struct ioc_gq *iocg, *tiocg, *root_iocg; in transfer_surpluses()
1873 root_iocg = list_first_entry(&inner_walk, struct ioc_gq, walk_list); in transfer_surpluses()
1887 struct ioc_gq *parent = iocg->ancestors[iocg->level - 1]; in transfer_surpluses()
1895 struct ioc_gq *parent = iocg->ancestors[iocg->level - 1]; in transfer_surpluses()
1909 struct ioc_gq *parent = iocg->ancestors[iocg->level - 1]; in transfer_surpluses()
1955 struct ioc_gq *parent; in transfer_surpluses()
1999 struct ioc_gq *parent = iocg->ancestors[iocg->level - 1]; in transfer_surpluses()
2046 struct ioc_gq *iocg; in ioc_forgive_debts()
2137 struct ioc_gq *iocg, *tiocg; in ioc_check_iocgs()
2205 struct ioc_gq *iocg, *tiocg; in ioc_timer_fn()
2426 static u64 adjust_inuse_and_calc_cost(struct ioc_gq *iocg, u64 vtime, in adjust_inuse_and_calc_cost()
2486 static void calc_vtime_cost_builtin(struct bio *bio, struct ioc_gq *iocg, in calc_vtime_cost_builtin()
2527 static u64 calc_vtime_cost(struct bio *bio, struct ioc_gq *iocg, bool is_merge) in calc_vtime_cost()
2564 struct ioc_gq *iocg = blkg_to_iocg(blkg); in ioc_rqos_throttle()
2698 struct ioc_gq *iocg = blkg_to_iocg(bio->bi_blkg); in ioc_rqos_merge()
2756 struct ioc_gq *iocg = blkg_to_iocg(bio->bi_blkg); in ioc_rqos_done_bio()
2927 struct ioc_gq *iocg; in ioc_pd_alloc()
2944 struct ioc_gq *iocg = pd_to_iocg(pd); in ioc_pd_init()
2970 struct ioc_gq *tiocg = blkg_to_iocg(tblkg); in ioc_pd_init()
2981 struct ioc_gq *iocg = pd_to_iocg(pd); in ioc_pd_free()
3009 struct ioc_gq *iocg = pd_to_iocg(pd); in ioc_pd_stat()
3035 struct ioc_gq *iocg = pd_to_iocg(pd); in ioc_weight_prfill()
3061 struct ioc_gq *iocg; in ioc_weight_write()
3077 struct ioc_gq *iocg = blkg_to_iocg(blkg); in ioc_weight_write()