Lines Matching refs:bfq_group

138 static void bfqg_stats_set_start_group_wait_time(struct bfq_group *bfqg,
139 struct bfq_group *curr_bfqg)
166 void bfqg_stats_update_dequeue(struct bfq_group *bfqg)
171 void bfqg_stats_set_start_empty_time(struct bfq_group *bfqg)
190 void bfqg_stats_update_idle_time(struct bfq_group *bfqg)
204 void bfqg_stats_set_start_idle_time(struct bfq_group *bfqg)
212 void bfqg_stats_update_avg_queue_size(struct bfq_group *bfqg)
222 void bfqg_stats_update_io_add(struct bfq_group *bfqg, struct bfq_queue *bfqq,
231 void bfqg_stats_update_io_remove(struct bfq_group *bfqg, blk_opf_t opf)
236 void bfqg_stats_update_io_merged(struct bfq_group *bfqg, blk_opf_t opf)
241 void bfqg_stats_update_completion(struct bfq_group *bfqg, u64 start_time_ns,
257 void bfqg_stats_update_io_remove(struct bfq_group *bfqg, blk_opf_t opf) { }
258 void bfqg_stats_update_io_merged(struct bfq_group *bfqg, blk_opf_t opf) { }
259 void bfqg_stats_update_completion(struct bfq_group *bfqg, u64 start_time_ns,
261 void bfqg_stats_update_dequeue(struct bfq_group *bfqg) { }
262 void bfqg_stats_set_start_idle_time(struct bfq_group *bfqg) { }
274 static struct bfq_group *pd_to_bfqg(struct blkg_policy_data *pd)
276 return pd ? container_of(pd, struct bfq_group, pd) : NULL;
279 struct blkcg_gq *bfqg_to_blkg(struct bfq_group *bfqg)
284 static struct bfq_group *blkg_to_bfqg(struct blkcg_gq *blkg)
290 * bfq_group handlers
291 * The following functions help in navigating the bfq_group hierarchy
292 * by allowing to find the parent of a bfq_group or the bfq_group
296 static struct bfq_group *bfqg_parent(struct bfq_group *bfqg)
303 struct bfq_group *bfqq_group(struct bfq_queue *bfqq)
307 return group_entity ? container_of(group_entity, struct bfq_group,
313 * The following two functions handle get and put of a bfq_group by
317 static void bfqg_get(struct bfq_group *bfqg)
322 static void bfqg_put(struct bfq_group *bfqg)
328 static void bfqg_and_blkg_get(struct bfq_group *bfqg)
336 void bfqg_and_blkg_put(struct bfq_group *bfqg)
345 struct bfq_group *bfqg = blkg_to_bfqg(rq->bio->bi_blkg);
399 static void bfqg_stats_xfer_dead(struct bfq_group *bfqg)
401 struct bfq_group *parent;
417 void bfq_init_entity(struct bfq_entity *entity, struct bfq_group *bfqg)
513 struct bfq_group *bfqg;
532 struct bfq_group *bfqg = blkg_to_bfqg(blkg);
553 struct bfq_group *bfqg = pd_to_bfqg(pd);
561 struct bfq_group *bfqg = pd_to_bfqg(pd);
566 static void bfq_group_set_parent(struct bfq_group *bfqg,
567 struct bfq_group *parent)
576 static void bfq_link_bfqg(struct bfq_data *bfqd, struct bfq_group *bfqg)
578 struct bfq_group *parent;
588 struct bfq_group *curr_bfqg = container_of(entity,
589 struct bfq_group, entity);
599 struct bfq_group *bfq_bio_bfqg(struct bfq_data *bfqd, struct bio *bio)
602 struct bfq_group *bfqg;
636 struct bfq_group *bfqg)
639 struct bfq_group *old_parent = bfqq_group(bfqq);
711 struct bfq_group *bfqg,
760 struct bfq_group *bfqg)
782 struct bfq_group *bfqg = bfq_bio_bfqg(bfqd, bio);
904 struct bfq_group *bfqg,
931 struct bfq_group *bfqg = pd_to_bfqg(pd);
997 struct bfq_group *bfqg = blkg_to_bfqg(blkg);
1021 struct bfq_group *bfqg = pd_to_bfqg(pd);
1039 static void bfq_group_set_weight(struct bfq_group *bfqg, u64 weight, u64 dev_weight)
1088 struct bfq_group *bfqg = blkg_to_bfqg(blkg);
1105 struct bfq_group *bfqg;
1226 struct bfq_group *bfqg = blkg_to_bfqg(pd->blkg);
1245 offsetof(struct bfq_group, stats.bytes), &tmp);
1262 struct bfq_group *bfqg = pd_to_bfqg(pd);
1284 struct bfq_group *bfq_create_group_hierarchy(struct bfq_data *bfqd, int node)
1326 .private = offsetof(struct bfq_group, stats.bytes),
1331 .private = offsetof(struct bfq_group, stats.ios),
1337 .private = offsetof(struct bfq_group, stats.time),
1346 .private = offsetof(struct bfq_group, stats.service_time),
1351 .private = offsetof(struct bfq_group, stats.wait_time),
1356 .private = offsetof(struct bfq_group, stats.merged),
1361 .private = offsetof(struct bfq_group, stats.queued),
1369 .private = offsetof(struct bfq_group, stats.bytes),
1374 .private = offsetof(struct bfq_group, stats.ios),
1380 .private = offsetof(struct bfq_group, stats.time),
1389 .private = offsetof(struct bfq_group, stats.service_time),
1394 .private = offsetof(struct bfq_group, stats.wait_time),
1399 .private = offsetof(struct bfq_group, stats.merged),
1404 .private = offsetof(struct bfq_group, stats.queued),
1413 .private = offsetof(struct bfq_group, stats.group_wait_time),
1418 .private = offsetof(struct bfq_group, stats.idle_time),
1423 .private = offsetof(struct bfq_group, stats.empty_time),
1428 .private = offsetof(struct bfq_group, stats.dequeue),
1448 struct bfq_group *bfqg) {}
1450 void bfq_init_entity(struct bfq_entity *entity, struct bfq_group *bfqg)
1470 struct bfq_group *bfq_bio_bfqg(struct bfq_data *bfqd, struct bio *bio)
1475 struct bfq_group *bfqq_group(struct bfq_queue *bfqq)
1480 void bfqg_and_blkg_put(struct bfq_group *bfqg) {}
1482 struct bfq_group *bfq_create_group_hierarchy(struct bfq_data *bfqd, int node)
1484 struct bfq_group *bfqg;