Symbol: throtl_grp
block/blk-throttle.c
1005
static void tg_dispatch_one_bio(struct throtl_grp *tg, bool rw)
block/blk-throttle.c
1009
struct throtl_grp *parent_tg = sq_to_tg(parent_sq);
block/blk-throttle.c
1010
struct throtl_grp *tg_to_put = NULL;
block/blk-throttle.c
1047
static int throtl_dispatch_tg(struct throtl_grp *tg)
block/blk-throttle.c
1085
struct throtl_grp *tg;
block/blk-throttle.c
1132
struct throtl_grp *tg = sq_to_tg(sq);
block/blk-throttle.c
114
struct throtl_grp *__tg = sq_to_tg((sq)); \
block/blk-throttle.c
1237
struct throtl_grp *tg = pd_to_tg(pd);
block/blk-throttle.c
1248
struct throtl_grp *tg = pd_to_tg(pd);
block/blk-throttle.c
1270
static void tg_conf_updated(struct throtl_grp *tg, bool global)
block/blk-throttle.c
1291
struct throtl_grp *this_tg = blkg_to_tg(blkg);
block/blk-throttle.c
1357
struct throtl_grp *tg;
block/blk-throttle.c
136
static void throtl_qnode_init(struct throtl_qnode *qn, struct throtl_grp *tg)
block/blk-throttle.c
1443
.private = offsetof(struct throtl_grp, bps[READ]),
block/blk-throttle.c
1449
.private = offsetof(struct throtl_grp, bps[WRITE]),
block/blk-throttle.c
1455
.private = offsetof(struct throtl_grp, iops[READ]),
block/blk-throttle.c
1461
.private = offsetof(struct throtl_grp, iops[WRITE]),
block/blk-throttle.c
1467
.private = offsetof(struct throtl_grp, stat_bytes),
block/blk-throttle.c
1472
.private = offsetof(struct throtl_grp, stat_bytes),
block/blk-throttle.c
1477
.private = offsetof(struct throtl_grp, stat_ios),
block/blk-throttle.c
1482
.private = offsetof(struct throtl_grp, stat_ios),
block/blk-throttle.c
1491
struct throtl_grp *tg = pd_to_tg(pd);
block/blk-throttle.c
1545
struct throtl_grp *tg;
block/blk-throttle.c
1639
static void tg_flush_bios(struct throtl_grp *tg)
block/blk-throttle.c
1686
static void tg_cancel_writeback_bios(struct throtl_grp *tg,
block/blk-throttle.c
1764
static bool tg_within_limit(struct throtl_grp *tg, struct bio *bio, bool rw)
block/blk-throttle.c
1797
struct throtl_grp *tg = blkg_to_tg(blkg);
block/blk-throttle.c
219
struct throtl_grp **tg_to_put, bool rw)
block/blk-throttle.c
264
struct throtl_grp *tg;
block/blk-throttle.c
29
#define rb_entry_tg(node) rb_entry((node), struct throtl_grp, rb_node)
block/blk-throttle.c
301
struct throtl_grp *tg = pd_to_tg(pd);
block/blk-throttle.c
331
static void tg_update_has_rules(struct throtl_grp *tg)
block/blk-throttle.c
333
struct throtl_grp *parent_tg = sq_to_tg(tg->service_queue.parent_sq);
block/blk-throttle.c
348
struct throtl_grp *tg = pd_to_tg(pd);
block/blk-throttle.c
360
struct throtl_grp *tg = pd_to_tg(pd);
block/blk-throttle.c
369
struct throtl_grp *tg = pd_to_tg(pd);
block/blk-throttle.c
375
static struct throtl_grp *
block/blk-throttle.c
396
struct throtl_grp *tg;
block/blk-throttle.c
405
static void tg_service_queue_add(struct throtl_grp *tg)
block/blk-throttle.c
410
struct throtl_grp *__tg;
block/blk-throttle.c
431
static void throtl_enqueue_tg(struct throtl_grp *tg)
block/blk-throttle.c
440
static void throtl_dequeue_tg(struct throtl_grp *tg)
block/blk-throttle.c
47
static inline struct blkcg_gq *tg_to_blkg(struct throtl_grp *tg)
block/blk-throttle.c
509
static inline void throtl_start_new_slice_with_credit(struct throtl_grp *tg,
block/blk-throttle.c
531
static inline void throtl_start_new_slice(struct throtl_grp *tg, bool rw,
block/blk-throttle.c
547
static inline void throtl_set_slice_end(struct throtl_grp *tg, bool rw,
block/blk-throttle.c
553
static inline void throtl_extend_slice(struct throtl_grp *tg, bool rw,
block/blk-throttle.c
567
static bool throtl_slice_used(struct throtl_grp *tg, bool rw)
block/blk-throttle.c
59
static struct throtl_grp *sq_to_tg(struct throtl_service_queue *sq)
block/blk-throttle.c
615
static long long throtl_trim_bps(struct throtl_grp *tg, bool rw,
block/blk-throttle.c
62
return container_of(sq, struct throtl_grp, service_queue);
block/blk-throttle.c
636
static int throtl_trim_iops(struct throtl_grp *tg, bool rw,
block/blk-throttle.c
658
static inline void throtl_trim_slice(struct throtl_grp *tg, bool rw)
block/blk-throttle.c
712
static void __tg_update_carryover(struct throtl_grp *tg, bool rw,
block/blk-throttle.c
755
static void tg_update_carryover(struct throtl_grp *tg)
block/blk-throttle.c
76
struct throtl_grp *tg = sq_to_tg(sq);
block/blk-throttle.c
768
static unsigned long tg_within_iops_limit(struct throtl_grp *tg, struct bio *bio,
block/blk-throttle.c
791
static unsigned long tg_within_bps_limit(struct throtl_grp *tg, struct bio *bio,
block/blk-throttle.c
828
static void throtl_charge_bps_bio(struct throtl_grp *tg, struct bio *bio)
block/blk-throttle.c
84
static uint64_t tg_bps_limit(struct throtl_grp *tg, int rw)
block/blk-throttle.c
840
static void throtl_charge_iops_bio(struct throtl_grp *tg, struct bio *bio)
block/blk-throttle.c
852
static void tg_update_slice(struct throtl_grp *tg, bool rw)
block/blk-throttle.c
861
static unsigned long tg_dispatch_bps_time(struct throtl_grp *tg, struct bio *bio)
block/blk-throttle.c
880
static unsigned long tg_dispatch_iops_time(struct throtl_grp *tg, struct bio *bio)
block/blk-throttle.c
900
static unsigned long tg_dispatch_time(struct throtl_grp *tg, struct bio *bio)
block/blk-throttle.c
937
struct throtl_grp *tg)
block/blk-throttle.c
94
static unsigned int tg_iops_limit(struct throtl_grp *tg, int rw)
block/blk-throttle.c
968
static void tg_update_disptime(struct throtl_grp *tg)
block/blk-throttle.c
995
static void start_parent_slice_with_credit(struct throtl_grp *child_tg,
block/blk-throttle.c
996
struct throtl_grp *parent_tg, bool rw)
block/blk-throttle.h
135
static inline struct throtl_grp *pd_to_tg(struct blkg_policy_data *pd)
block/blk-throttle.h
137
return pd ? container_of(pd, struct throtl_grp, pd) : NULL;
block/blk-throttle.h
140
static inline struct throtl_grp *blkg_to_tg(struct blkcg_gq *blkg)
block/blk-throttle.h
170
struct throtl_grp *tg;
block/blk-throttle.h
34
struct throtl_grp *tg; /* tg this qnode belongs to */