Lines Matching refs:bfq_queue
138 void bfq_mark_bfqq_##name(struct bfq_queue *bfqq) \
142 void bfq_clear_bfqq_##name(struct bfq_queue *bfqq) \
146 int bfq_bfqq_##name(const struct bfq_queue *bfqq) \
380 struct bfq_queue *bic_to_bfqq(struct bfq_io_cq *bic, bool is_sync) in bic_to_bfqq()
385 static void bfq_put_stable_ref(struct bfq_queue *bfqq);
387 void bic_set_bfqq(struct bfq_io_cq *bic, struct bfq_queue *bfqq, bool is_sync) in bic_set_bfqq()
590 static struct bfq_queue *
596 struct bfq_queue *bfqq = NULL; in bfq_rq_pos_tree_lookup()
604 bfqq = rb_entry(parent, struct bfq_queue, pos_node); in bfq_rq_pos_tree_lookup()
631 static bool bfq_too_late_for_merging(struct bfq_queue *bfqq) in bfq_too_late_for_merging()
647 bfq_pos_tree_add_move(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_pos_tree_add_move()
650 struct bfq_queue *__bfqq; in bfq_pos_tree_add_move()
718 struct bfq_queue *bfqq) in bfq_asymmetric_scenario()
762 void bfq_weights_tree_add(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_weights_tree_add()
837 struct bfq_queue *bfqq, in __bfq_weights_tree_remove()
860 struct bfq_queue *bfqq) in bfq_weights_tree_remove()
911 static struct request *bfq_check_fifo(struct bfq_queue *bfqq, in bfq_check_fifo()
931 struct bfq_queue *bfqq, in bfq_find_next_rq()
959 struct bfq_queue *bfqq) in bfq_serv_to_charge()
980 struct bfq_queue *bfqq) in bfq_updated_next_req()
1042 static void switch_back_to_interactive_wr(struct bfq_queue *bfqq, in switch_back_to_interactive_wr()
1051 bfq_bfqq_resume_state(struct bfq_queue *bfqq, struct bfq_data *bfqd, in bfq_bfqq_resume_state()
1114 static int bfqq_process_refs(struct bfq_queue *bfqq) in bfqq_process_refs()
1121 static void bfq_reset_burst_list(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_reset_burst_list()
1123 struct bfq_queue *item; in bfq_reset_burst_list()
1144 static void bfq_add_to_burst(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_add_to_burst()
1150 struct bfq_queue *pos, *bfqq_item; in bfq_add_to_burst()
1296 static void bfq_handle_burst(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_handle_burst()
1362 static int bfq_bfqq_budget_left(struct bfq_queue *bfqq) in bfq_bfqq_budget_left()
1499 struct bfq_queue *bfqq, in bfq_bfqq_update_budg_for_activation()
1568 struct bfq_queue *bfqq, in bfq_update_bfqq_wr_on_rq_arrival()
1665 struct bfq_queue *bfqq) in bfq_bfqq_idle_for_long_time()
1678 static bool bfq_bfqq_higher_class_or_weight(struct bfq_queue *bfqq, in bfq_bfqq_higher_class_or_weight()
1679 struct bfq_queue *in_serv_bfqq) in bfq_bfqq_higher_class_or_weight()
1703 static bool bfq_better_to_idle(struct bfq_queue *bfqq);
1706 struct bfq_queue *bfqq, in bfq_bfqq_handle_idle_busy_switch()
1872 struct bfq_queue *bfqq) in bfq_reset_inject_limit()
1937 static void bfq_update_io_intensity(struct bfq_queue *bfqq, u64 now_ns) in bfq_update_io_intensity()
2019 static void bfq_check_waker(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_check_waker()
2076 struct bfq_queue *bfqq = RQ_BFQQ(rq); in bfq_add_request()
2229 struct bfq_queue *bfqq = bfqd->bio_bfqq; in bfq_find_rq_fmerge()
2265 struct bfq_queue *bfqq = RQ_BFQQ(rq); in bfq_remove_request()
2373 static struct bfq_queue *bfq_init_rq(struct request *rq);
2383 struct bfq_queue *bfqq = bfq_init_rq(req); in bfq_request_merged()
2435 struct bfq_queue *bfqq = bfq_init_rq(rq), in bfq_requests_merged()
2473 static void bfq_bfqq_end_wr(struct bfq_queue *bfqq) in bfq_bfqq_end_wr()
2520 struct bfq_queue *bfqq; in bfq_end_wr()
2548 static struct bfq_queue *bfqq_find_close(struct bfq_data *bfqd, in bfqq_find_close()
2549 struct bfq_queue *bfqq, in bfqq_find_close()
2554 struct bfq_queue *__bfqq; in bfqq_find_close()
2572 __bfqq = rb_entry(parent, struct bfq_queue, pos_node); in bfqq_find_close()
2583 __bfqq = rb_entry(node, struct bfq_queue, pos_node); in bfqq_find_close()
2590 static struct bfq_queue *bfq_find_close_cooperator(struct bfq_data *bfqd, in bfq_find_close_cooperator()
2591 struct bfq_queue *cur_bfqq, in bfq_find_close_cooperator()
2594 struct bfq_queue *bfqq; in bfq_find_close_cooperator()
2610 static struct bfq_queue *
2611 bfq_setup_merge(struct bfq_queue *bfqq, struct bfq_queue *new_bfqq) in bfq_setup_merge()
2614 struct bfq_queue *__bfqq; in bfq_setup_merge()
2669 static bool bfq_may_be_close_cooperator(struct bfq_queue *bfqq, in bfq_may_be_close_cooperator()
2670 struct bfq_queue *new_bfqq) in bfq_may_be_close_cooperator()
2699 struct bfq_queue *bfqq);
2721 static struct bfq_queue *
2722 bfq_setup_cooperator(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_setup_cooperator()
2725 struct bfq_queue *in_service_bfqq, *new_bfqq; in bfq_setup_cooperator()
2749 struct bfq_queue *stable_merge_bfqq = in bfq_setup_cooperator()
2762 struct bfq_queue *new_bfqq = in bfq_setup_cooperator()
2865 static void bfq_bfqq_save_state(struct bfq_queue *bfqq) in bfq_bfqq_save_state()
2917 bfq_reassign_last_bfqq(struct bfq_queue *cur_bfqq, struct bfq_queue *new_bfqq) in bfq_reassign_last_bfqq()
2926 void bfq_release_process_ref(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_release_process_ref()
2950 struct bfq_queue *bfqq, struct bfq_queue *new_bfqq) in bfq_merge_bfqqs()
3052 struct bfq_queue *bfqq = bfqd->bio_bfqq, *new_bfqq; in bfq_allow_bio_merge()
3108 struct bfq_queue *bfqq) in bfq_set_budget_timeout()
3124 struct bfq_queue *bfqq) in __bfq_set_in_service_queue()
3180 static struct bfq_queue *bfq_set_in_service_queue(struct bfq_data *bfqd) in bfq_set_in_service_queue()
3182 struct bfq_queue *bfqq = bfq_get_next_queue(bfqd); in bfq_set_in_service_queue()
3190 struct bfq_queue *bfqq = bfqd->in_service_queue; in bfq_arm_slice_timer()
3475 struct bfq_queue *bfqq = RQ_BFQQ(rq); in bfq_dispatch_remove()
3697 struct bfq_queue *bfqq) in idling_needed_for_service_guarantees()
3714 static bool __bfq_bfqq_expire(struct bfq_data *bfqd, struct bfq_queue *bfqq, in __bfq_bfqq_expire()
3783 struct bfq_queue *bfqq, in __bfq_bfqq_recalc_budget()
3974 static bool bfq_bfqq_is_slow(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_bfqq_is_slow()
4125 struct bfq_queue *bfqq) in bfq_bfqq_softrt_next_start()
4161 struct bfq_queue *bfqq, in bfq_bfqq_expire()
4285 static bool bfq_bfqq_budget_timeout(struct bfq_queue *bfqq) in bfq_bfqq_budget_timeout()
4298 static bool bfq_may_expire_for_budg_timeout(struct bfq_queue *bfqq) in bfq_may_expire_for_budg_timeout()
4313 struct bfq_queue *bfqq) in idling_boosts_thr_without_issues()
4412 static bool bfq_better_to_idle(struct bfq_queue *bfqq) in bfq_better_to_idle()
4463 static bool bfq_bfqq_must_idle(struct bfq_queue *bfqq) in bfq_bfqq_must_idle()
4475 static struct bfq_queue *
4478 struct bfq_queue *bfqq, *in_serv_bfqq = bfqd->in_service_queue; in bfq_choose_bfqq_for_injection()
4568 static struct bfq_queue *bfq_select_queue(struct bfq_data *bfqd) in bfq_select_queue()
4570 struct bfq_queue *bfqq; in bfq_select_queue()
4651 struct bfq_queue *async_bfqq = in bfq_select_queue()
4656 struct bfq_queue *blocked_bfqq = in bfq_select_queue()
4659 struct bfq_queue, in bfq_select_queue()
4792 static void bfq_update_wr_data(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_update_wr_data()
4861 struct bfq_queue *bfqq) in bfq_dispatch_rq_from_bfqq()
4923 struct bfq_queue *bfqq = NULL; in __bfq_dispatch_request()
5010 struct bfq_queue *in_serv_queue, in bfq_update_dispatch_stats()
5013 struct bfq_queue *bfqq = rq ? RQ_BFQQ(rq) : NULL; in bfq_update_dispatch_stats()
5055 struct bfq_queue *in_serv_queue, in bfq_update_dispatch_stats()
5063 struct bfq_queue *in_serv_queue; in bfq_dispatch_request()
5091 void bfq_put_queue(struct bfq_queue *bfqq) in bfq_put_queue()
5093 struct bfq_queue *item; in bfq_put_queue()
5170 static void bfq_put_stable_ref(struct bfq_queue *bfqq) in bfq_put_stable_ref()
5176 static void bfq_put_cooperator(struct bfq_queue *bfqq) in bfq_put_cooperator()
5178 struct bfq_queue *__bfqq, *next; in bfq_put_cooperator()
5195 static void bfq_exit_bfqq(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_exit_bfqq()
5211 struct bfq_queue *bfqq = bic_to_bfqq(bic, is_sync); in bfq_exit_icq_bfqq()
5259 bfq_set_next_ioprio_data(struct bfq_queue *bfqq, struct bfq_io_cq *bic) in bfq_set_next_ioprio_data()
5308 static struct bfq_queue *bfq_get_queue(struct bfq_data *bfqd,
5316 struct bfq_queue *bfqq; in bfq_check_ioprio_change()
5340 static void bfq_init_bfqq(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_init_bfqq()
5406 static struct bfq_queue **bfq_async_queue_prio(struct bfq_data *bfqd, in bfq_async_queue_prio()
5425 static struct bfq_queue *
5426 bfq_do_early_stable_merge(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_do_early_stable_merge()
5428 struct bfq_queue *last_bfqq_created) in bfq_do_early_stable_merge()
5430 struct bfq_queue *new_bfqq = in bfq_do_early_stable_merge()
5498 static struct bfq_queue *bfq_do_or_sched_stable_merge(struct bfq_data *bfqd, in bfq_do_or_sched_stable_merge()
5499 struct bfq_queue *bfqq, in bfq_do_or_sched_stable_merge()
5502 struct bfq_queue **source_bfqq = bfqq->entity.parent ? in bfq_do_or_sched_stable_merge()
5506 struct bfq_queue *last_bfqq_created = *source_bfqq; in bfq_do_or_sched_stable_merge()
5571 static struct bfq_queue *bfq_get_queue(struct bfq_data *bfqd, in bfq_get_queue()
5578 struct bfq_queue **async_bfqq = NULL; in bfq_get_queue()
5579 struct bfq_queue *bfqq; in bfq_get_queue()
5641 struct bfq_queue *bfqq) in bfq_update_io_thinktime()
5663 bfq_update_io_seektime(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_update_io_seektime()
5694 struct bfq_queue *bfqq, in bfq_update_has_short_ttime()
5825 static void bfq_rq_enqueued(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_rq_enqueued()
5884 struct bfq_queue *bfqq = RQ_BFQQ(rq), in __bfq_insert_request()
5937 struct bfq_queue *bfqq, in bfq_update_insert_stats()
5962 struct bfq_queue *bfqq, in bfq_update_insert_stats()
5972 struct bfq_queue *bfqq; in bfq_insert_request()
6083 struct bfq_queue *bfqq = bfqd->in_service_queue; in bfq_update_hw_tag()
6122 static void bfq_completed_request(struct bfq_queue *bfqq, struct bfq_data *bfqd) in bfq_completed_request()
6252 static void bfq_finish_requeue_request_body(struct bfq_queue *bfqq) in bfq_finish_requeue_request_body()
6364 struct bfq_queue *bfqq) in bfq_update_inject_limit()
6428 struct bfq_queue *bfqq = RQ_BFQQ(rq); in bfq_finish_requeue_request()
6485 static struct bfq_queue *
6486 bfq_split_bfqq(struct bfq_io_cq *bic, struct bfq_queue *bfqq) in bfq_split_bfqq()
6505 static struct bfq_queue *bfq_get_bfqq_handle_split(struct bfq_data *bfqd, in bfq_get_bfqq_handle_split()
6511 struct bfq_queue *bfqq = bic_to_bfqq(bic, is_sync); in bfq_get_bfqq_handle_split()
6607 static struct bfq_queue *bfq_init_rq(struct request *rq) in bfq_init_rq()
6614 struct bfq_queue *bfqq; in bfq_init_rq()
6644 struct bfq_queue *old_bfqq = bfqq; in bfq_init_rq()
6731 bfq_idle_slice_timer_body(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_idle_slice_timer_body()
6785 struct bfq_queue *bfqq = bfqd->in_service_queue; in bfq_idle_slice_timer()
6802 struct bfq_queue **bfqq_ptr) in __bfq_put_async_bfqq()
6804 struct bfq_queue *bfqq = *bfqq_ptr; in __bfq_put_async_bfqq()
6900 struct bfq_queue *bfqq, *n; in bfq_exit_queue()
7079 bfq_pool = KMEM_CACHE(bfq_queue, 0); in bfq_slab_setup()