Lines Matching defs:bfqq
179 * group is already marked empty. This can happen if bfqq got new
222 void bfqg_stats_update_io_add(struct bfq_group *bfqg, struct bfq_queue *bfqq,
227 if (!(bfqq == ((struct bfq_data *)bfqg->bfqd)->in_service_queue))
228 bfqg_stats_set_start_group_wait_time(bfqg, bfqq_group(bfqq));
257 void bfqg_stats_update_io_add(struct bfq_group *bfqg, struct bfq_queue *bfqq,
308 struct bfq_group *bfqq_group(struct bfq_queue *bfqq)
310 struct bfq_entity *group_entity = bfqq->entity.parent;
314 bfqq->bfqd->root_group;
426 struct bfq_queue *bfqq = bfq_entity_to_bfqq(entity);
430 if (bfqq) {
431 bfqq->ioprio = bfqq->new_ioprio;
432 bfqq->ioprio_class = bfqq->new_ioprio_class;
633 * bfq_bfqq_move - migrate @bfqq to @bfqg.
635 * @bfqq: the queue to move.
638 * Move @bfqq to @bfqg, deactivating it from its old group and reactivating
646 void bfq_bfqq_move(struct bfq_data *bfqd, struct bfq_queue *bfqq,
649 struct bfq_entity *entity = &bfqq->entity;
655 if (bfqq == &bfqd->oom_bfqq)
658 * Get extra reference to prevent bfqq from being freed in
661 bfqq->ref++;
663 /* If bfqq is empty, then bfq_bfqq_expire also invokes
664 * bfq_del_bfqq_busy, thereby removing bfqq and its entity
666 * need to remove bfqq explicitly with bfq_deactivate_bfqq, as
669 if (bfqq == bfqd->in_service_queue)
673 if (bfq_bfqq_busy(bfqq))
674 bfq_deactivate_bfqq(bfqd, bfqq, false, false);
677 bfqg_and_blkg_put(bfqq_group(bfqq));
684 if (bfq_bfqq_busy(bfqq)) {
686 bfq_pos_tree_add_move(bfqd, bfqq);
687 bfq_activate_bfqq(bfqd, bfqq);
692 /* release extra ref taken above, bfqq may happen to be freed now */
693 bfq_put_queue(bfqq);
725 /* We are the only user of this bfqq, just move it */
729 struct bfq_queue *bfqq;
736 for (bfqq = sync_bfqq; bfqq; bfqq = bfqq->new_bfqq)
737 if (bfqq->entity.sched_data !=
740 if (bfqq) {
749 * bfqq now so that we cannot merge bio to a
859 struct bfq_queue *bfqq;
874 bfqq = bfq_entity_to_bfqq(child_entity);
875 bfq_bfqq_move(bfqd, bfqq, bfqd->root_group);
1429 void bfq_bfqq_move(struct bfq_data *bfqd, struct bfq_queue *bfqq,
1434 struct bfq_queue *bfqq = bfq_entity_to_bfqq(entity);
1438 if (bfqq) {
1439 bfqq->ioprio = bfqq->new_ioprio;
1440 bfqq->ioprio_class = bfqq->new_ioprio_class;
1457 struct bfq_group *bfqq_group(struct bfq_queue *bfqq)
1459 return bfqq->bfqd->root_group;