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()
568 static bool bfqq_request_over_limit(struct bfq_queue *bfqq, int limit) in bfqq_request_over_limit()
650 static bool bfqq_request_over_limit(struct bfq_queue *bfqq, int limit) in bfqq_request_over_limit()
675 struct bfq_queue *bfqq = bic ? bic_to_bfqq(bic, op_is_sync(opf)) : NULL; in bfq_limit_depth()
701 static struct bfq_queue *
707 struct bfq_queue *bfqq = NULL; in bfq_rq_pos_tree_lookup()
715 bfqq = rb_entry(parent, struct bfq_queue, pos_node); in bfq_rq_pos_tree_lookup()
742 static bool bfq_too_late_for_merging(struct bfq_queue *bfqq) in bfq_too_late_for_merging()
758 bfq_pos_tree_add_move(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_pos_tree_add_move()
761 struct bfq_queue *__bfqq; in bfq_pos_tree_add_move()
829 struct bfq_queue *bfqq) in bfq_asymmetric_scenario()
873 void bfq_weights_tree_add(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_weights_tree_add()
948 struct bfq_queue *bfqq, in __bfq_weights_tree_remove()
971 struct bfq_queue *bfqq) in bfq_weights_tree_remove()
1022 static struct request *bfq_check_fifo(struct bfq_queue *bfqq, in bfq_check_fifo()
1042 struct bfq_queue *bfqq, in bfq_find_next_rq()
1070 struct bfq_queue *bfqq) in bfq_serv_to_charge()
1091 struct bfq_queue *bfqq) in bfq_updated_next_req()
1153 static void switch_back_to_interactive_wr(struct bfq_queue *bfqq, in switch_back_to_interactive_wr()
1162 bfq_bfqq_resume_state(struct bfq_queue *bfqq, struct bfq_data *bfqd, in bfq_bfqq_resume_state()
1225 static int bfqq_process_refs(struct bfq_queue *bfqq) in bfqq_process_refs()
1233 static void bfq_reset_burst_list(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_reset_burst_list()
1235 struct bfq_queue *item; in bfq_reset_burst_list()
1256 static void bfq_add_to_burst(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_add_to_burst()
1262 struct bfq_queue *pos, *bfqq_item; in bfq_add_to_burst()
1408 static void bfq_handle_burst(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_handle_burst()
1474 static int bfq_bfqq_budget_left(struct bfq_queue *bfqq) in bfq_bfqq_budget_left()
1611 struct bfq_queue *bfqq, in bfq_bfqq_update_budg_for_activation()
1680 struct bfq_queue *bfqq, in bfq_update_bfqq_wr_on_rq_arrival()
1777 struct bfq_queue *bfqq) in bfq_bfqq_idle_for_long_time()
1790 static bool bfq_bfqq_higher_class_or_weight(struct bfq_queue *bfqq, in bfq_bfqq_higher_class_or_weight()
1791 struct bfq_queue *in_serv_bfqq) in bfq_bfqq_higher_class_or_weight()
1815 static bool bfq_better_to_idle(struct bfq_queue *bfqq);
1818 struct bfq_queue *bfqq, in bfq_bfqq_handle_idle_busy_switch()
1984 struct bfq_queue *bfqq) in bfq_reset_inject_limit()
2049 static void bfq_update_io_intensity(struct bfq_queue *bfqq, u64 now_ns) in bfq_update_io_intensity()
2130 static void bfq_check_waker(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_check_waker()
2202 struct bfq_queue *bfqq = RQ_BFQQ(rq); in bfq_add_request()
2359 struct bfq_queue *bfqq = bfqd->bio_bfqq; in bfq_find_rq_fmerge()
2395 struct bfq_queue *bfqq = RQ_BFQQ(rq); in bfq_remove_request()
2522 struct bfq_queue *bfqq = RQ_BFQQ(req); in bfq_request_merged()
2574 struct bfq_queue *bfqq = RQ_BFQQ(rq), in bfq_requests_merged()
2612 static void bfq_bfqq_end_wr(struct bfq_queue *bfqq) in bfq_bfqq_end_wr()
2659 struct bfq_queue *bfqq; in bfq_end_wr()
2687 static struct bfq_queue *bfqq_find_close(struct bfq_data *bfqd, in bfqq_find_close()
2688 struct bfq_queue *bfqq, in bfqq_find_close()
2693 struct bfq_queue *__bfqq; in bfqq_find_close()
2711 __bfqq = rb_entry(parent, struct bfq_queue, pos_node); in bfqq_find_close()
2722 __bfqq = rb_entry(node, struct bfq_queue, pos_node); in bfqq_find_close()
2729 static struct bfq_queue *bfq_find_close_cooperator(struct bfq_data *bfqd, in bfq_find_close_cooperator()
2730 struct bfq_queue *cur_bfqq, in bfq_find_close_cooperator()
2733 struct bfq_queue *bfqq; in bfq_find_close_cooperator()
2749 static struct bfq_queue *
2750 bfq_setup_merge(struct bfq_queue *bfqq, struct bfq_queue *new_bfqq) in bfq_setup_merge()
2753 struct bfq_queue *__bfqq; in bfq_setup_merge()
2825 static bool bfq_may_be_close_cooperator(struct bfq_queue *bfqq, in bfq_may_be_close_cooperator()
2826 struct bfq_queue *new_bfqq) in bfq_may_be_close_cooperator()
2855 struct bfq_queue *bfqq);
2877 static struct bfq_queue *
2878 bfq_setup_cooperator(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_setup_cooperator()
2881 struct bfq_queue *in_service_bfqq, *new_bfqq; in bfq_setup_cooperator()
2909 struct bfq_queue *stable_merge_bfqq = in bfq_setup_cooperator()
2922 struct bfq_queue *new_bfqq = in bfq_setup_cooperator()
3025 static void bfq_bfqq_save_state(struct bfq_queue *bfqq) in bfq_bfqq_save_state()
3077 bfq_reassign_last_bfqq(struct bfq_queue *cur_bfqq, struct bfq_queue *new_bfqq) in bfq_reassign_last_bfqq()
3086 void bfq_release_process_ref(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_release_process_ref()
3110 struct bfq_queue *bfqq, struct bfq_queue *new_bfqq) in bfq_merge_bfqqs()
3212 struct bfq_queue *bfqq = bfqd->bio_bfqq, *new_bfqq; in bfq_allow_bio_merge()
3268 struct bfq_queue *bfqq) in bfq_set_budget_timeout()
3284 struct bfq_queue *bfqq) in __bfq_set_in_service_queue()
3340 static struct bfq_queue *bfq_set_in_service_queue(struct bfq_data *bfqd) in bfq_set_in_service_queue()
3342 struct bfq_queue *bfqq = bfq_get_next_queue(bfqd); in bfq_set_in_service_queue()
3350 struct bfq_queue *bfqq = bfqd->in_service_queue; in bfq_arm_slice_timer()
3635 struct bfq_queue *bfqq = RQ_BFQQ(rq); in bfq_dispatch_remove()
3857 struct bfq_queue *bfqq) in idling_needed_for_service_guarantees()
3874 static bool __bfq_bfqq_expire(struct bfq_data *bfqd, struct bfq_queue *bfqq, in __bfq_bfqq_expire()
3943 struct bfq_queue *bfqq, in __bfq_bfqq_recalc_budget()
4134 static bool bfq_bfqq_is_slow(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_bfqq_is_slow()
4285 struct bfq_queue *bfqq) in bfq_bfqq_softrt_next_start()
4321 struct bfq_queue *bfqq, in bfq_bfqq_expire()
4445 static bool bfq_bfqq_budget_timeout(struct bfq_queue *bfqq) in bfq_bfqq_budget_timeout()
4458 static bool bfq_may_expire_for_budg_timeout(struct bfq_queue *bfqq) in bfq_may_expire_for_budg_timeout()
4473 struct bfq_queue *bfqq) in idling_boosts_thr_without_issues()
4572 static bool bfq_better_to_idle(struct bfq_queue *bfqq) in bfq_better_to_idle()
4623 static bool bfq_bfqq_must_idle(struct bfq_queue *bfqq) in bfq_bfqq_must_idle()
4635 static struct bfq_queue *
4638 struct bfq_queue *bfqq, *in_serv_bfqq = bfqd->in_service_queue; in bfq_choose_bfqq_for_injection()
4728 static struct bfq_queue *bfq_select_queue(struct bfq_data *bfqd) in bfq_select_queue()
4730 struct bfq_queue *bfqq; in bfq_select_queue()
4811 struct bfq_queue *async_bfqq = in bfq_select_queue()
4816 struct bfq_queue *blocked_bfqq = in bfq_select_queue()
4819 struct bfq_queue, in bfq_select_queue()
4952 static void bfq_update_wr_data(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_update_wr_data()
5021 struct bfq_queue *bfqq) in bfq_dispatch_rq_from_bfqq()
5083 struct bfq_queue *bfqq = NULL; in __bfq_dispatch_request()
5170 struct bfq_queue *in_serv_queue, in bfq_update_dispatch_stats()
5173 struct bfq_queue *bfqq = rq ? RQ_BFQQ(rq) : NULL; in bfq_update_dispatch_stats()
5215 struct bfq_queue *in_serv_queue, in bfq_update_dispatch_stats()
5223 struct bfq_queue *in_serv_queue; in bfq_dispatch_request()
5252 void bfq_put_queue(struct bfq_queue *bfqq) in bfq_put_queue()
5254 struct bfq_queue *item; in bfq_put_queue()
5329 static void bfq_put_stable_ref(struct bfq_queue *bfqq) in bfq_put_stable_ref()
5335 void bfq_put_cooperator(struct bfq_queue *bfqq) in bfq_put_cooperator()
5337 struct bfq_queue *__bfqq, *next; in bfq_put_cooperator()
5354 static void bfq_exit_bfqq(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_exit_bfqq()
5370 struct bfq_queue *bfqq = bic_to_bfqq(bic, is_sync); in bfq_exit_icq_bfqq()
5418 bfq_set_next_ioprio_data(struct bfq_queue *bfqq, struct bfq_io_cq *bic) in bfq_set_next_ioprio_data()
5467 static struct bfq_queue *bfq_get_queue(struct bfq_data *bfqd,
5475 struct bfq_queue *bfqq; in bfq_check_ioprio_change()
5499 static void bfq_init_bfqq(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_init_bfqq()
5565 static struct bfq_queue **bfq_async_queue_prio(struct bfq_data *bfqd, in bfq_async_queue_prio()
5584 static struct bfq_queue *
5585 bfq_do_early_stable_merge(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_do_early_stable_merge()
5587 struct bfq_queue *last_bfqq_created) in bfq_do_early_stable_merge()
5589 struct bfq_queue *new_bfqq = in bfq_do_early_stable_merge()
5657 static struct bfq_queue *bfq_do_or_sched_stable_merge(struct bfq_data *bfqd, in bfq_do_or_sched_stable_merge()
5658 struct bfq_queue *bfqq, in bfq_do_or_sched_stable_merge()
5661 struct bfq_queue **source_bfqq = bfqq->entity.parent ? in bfq_do_or_sched_stable_merge()
5665 struct bfq_queue *last_bfqq_created = *source_bfqq; in bfq_do_or_sched_stable_merge()
5730 static struct bfq_queue *bfq_get_queue(struct bfq_data *bfqd, in bfq_get_queue()
5737 struct bfq_queue **async_bfqq = NULL; in bfq_get_queue()
5738 struct bfq_queue *bfqq; in bfq_get_queue()
5791 struct bfq_queue *bfqq) in bfq_update_io_thinktime()
5813 bfq_update_io_seektime(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_update_io_seektime()
5844 struct bfq_queue *bfqq, in bfq_update_has_short_ttime()
5975 static void bfq_rq_enqueued(struct bfq_data *bfqd, struct bfq_queue *bfqq, in bfq_rq_enqueued()
6031 static void bfqq_request_allocated(struct bfq_queue *bfqq) in bfqq_request_allocated()
6039 static void bfqq_request_freed(struct bfq_queue *bfqq) in bfqq_request_freed()
6050 struct bfq_queue *bfqq = RQ_BFQQ(rq), in __bfq_insert_request()
6103 struct bfq_queue *bfqq, in bfq_update_insert_stats()
6128 struct bfq_queue *bfqq, in bfq_update_insert_stats()
6133 static struct bfq_queue *bfq_init_rq(struct request *rq);
6140 struct bfq_queue *bfqq; in bfq_insert_request()
6206 struct bfq_queue *bfqq = bfqd->in_service_queue; in bfq_update_hw_tag()
6245 static void bfq_completed_request(struct bfq_queue *bfqq, struct bfq_data *bfqd) in bfq_completed_request()
6480 struct bfq_queue *bfqq) in bfq_update_inject_limit()
6544 struct bfq_queue *bfqq = RQ_BFQQ(rq); in bfq_finish_requeue_request()
6613 static struct bfq_queue *
6614 bfq_split_bfqq(struct bfq_io_cq *bic, struct bfq_queue *bfqq) in bfq_split_bfqq()
6633 static struct bfq_queue *bfq_get_bfqq_handle_split(struct bfq_data *bfqd, in bfq_get_bfqq_handle_split()
6639 struct bfq_queue *bfqq = bic_to_bfqq(bic, is_sync); in bfq_get_bfqq_handle_split()
6737 static struct bfq_queue *bfq_init_rq(struct request *rq) in bfq_init_rq()
6744 struct bfq_queue *bfqq; in bfq_init_rq()
6774 struct bfq_queue *old_bfqq = bfqq; in bfq_init_rq()
6862 bfq_idle_slice_timer_body(struct bfq_data *bfqd, struct bfq_queue *bfqq) in bfq_idle_slice_timer_body()
6916 struct bfq_queue *bfqq = bfqd->in_service_queue; in bfq_idle_slice_timer()
6933 struct bfq_queue **bfqq_ptr) in __bfq_put_async_bfqq()
6935 struct bfq_queue *bfqq = *bfqq_ptr; in __bfq_put_async_bfqq()
7024 struct bfq_queue *bfqq, *n; in bfq_exit_queue()
7211 bfq_pool = KMEM_CACHE(bfq_queue, 0); in bfq_slab_setup()