| H A D | bfq-iosched.c | 231 #define BFQ_RQ_SEEKY(bfqd, last_pos, rq) \ argument 234 (blk_queue_rot(bfqd->queue) || \ 452 * bfq_bic_lookup - search into @ioc a bic associated to @bfqd. 467 void bfq_schedule_dispatch(struct bfq_data *bfqd) in bfq_schedule_dispatch() argument 469 lockdep_assert_held(&bfqd->lock); in bfq_schedule_dispatch() 471 if (bfqd->queued != 0) { in bfq_schedule_dispatch() 472 bfq_log(bfqd, "schedule dispatch"); in bfq_schedule_dispatch() 473 blk_mq_run_hw_queues(bfqd->queue, true); in bfq_schedule_dispatch() 486 static struct request *bfq_choose_req(struct bfq_data *bfqd, in bfq_choose_req() argument 517 back_max = bfqd in bfq_choose_req() 578 bfqq_request_over_limit(struct bfq_data * bfqd,struct bfq_io_cq * bic,blk_opf_t opf,unsigned int act_idx,int limit) bfqq_request_over_limit() argument 670 bfqq_request_over_limit(struct bfq_data * bfqd,struct bfq_io_cq * bic,blk_opf_t opf,unsigned int act_idx,int limit) bfqq_request_over_limit() argument 695 struct bfq_data *bfqd = data->q->elevator->elevator_data; bfq_limit_depth() local 730 bfq_rq_pos_tree_lookup(struct bfq_data * bfqd,struct rb_root * root,sector_t sector,struct rb_node ** ret_parent,struct rb_node *** rb_link) bfq_rq_pos_tree_lookup() argument 786 bfq_pos_tree_add_move(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_pos_tree_add_move() argument 856 bfq_asymmetric_scenario(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_asymmetric_scenario() argument 1017 bfq_find_next_rq(struct bfq_data * bfqd,struct bfq_queue * bfqq,struct request * last) bfq_find_next_rq() argument 1066 bfq_updated_next_req(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_updated_next_req() argument 1095 bfq_wr_duration(struct bfq_data * bfqd) bfq_wr_duration() argument 1127 switch_back_to_interactive_wr(struct bfq_queue * bfqq,struct bfq_data * bfqd) switch_back_to_interactive_wr() argument 1135 bfq_bfqq_resume_state(struct bfq_queue * bfqq,struct bfq_data * bfqd,struct bfq_io_cq * bic,bool bfq_already_existing) bfq_bfqq_resume_state() argument 1209 bfq_reset_burst_list(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_reset_burst_list() argument 1232 bfq_add_to_burst(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_add_to_burst() argument 1384 bfq_handle_burst(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_handle_burst() argument 1462 bfq_max_budget(struct bfq_data * bfqd) bfq_max_budget() argument 1474 bfq_min_budget(struct bfq_data * bfqd) bfq_min_budget() argument 1586 bfq_bfqq_update_budg_for_activation(struct bfq_data * bfqd,struct bfq_queue * bfqq,bool arrived_in_time) bfq_bfqq_update_budg_for_activation() argument 1655 bfq_update_bfqq_wr_on_rq_arrival(struct bfq_data * bfqd,struct bfq_queue * bfqq,unsigned int old_wr_coeff,bool wr_or_deserves_wr,bool interactive,bool in_burst,bool soft_rt) bfq_update_bfqq_wr_on_rq_arrival() argument 1752 bfq_bfqq_idle_for_long_time(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_bfqq_idle_for_long_time() argument 1794 bfq_actuator_index(struct bfq_data * bfqd,struct bio * bio) bfq_actuator_index() argument 1820 bfq_bfqq_handle_idle_busy_switch(struct bfq_data * bfqd,struct bfq_queue * bfqq,int old_wr_coeff,struct request * rq,bool * interactive) bfq_bfqq_handle_idle_busy_switch() argument 1987 bfq_reset_inject_limit(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_reset_inject_limit() argument 2134 bfq_check_waker(struct bfq_data * bfqd,struct bfq_queue * bfqq,u64 now_ns) bfq_check_waker() argument 2209 struct bfq_data *bfqd = bfqq->bfqd; bfq_add_request() local 2361 bfq_find_rq_fmerge(struct bfq_data * bfqd,struct bio * bio,struct request_queue * q) bfq_find_rq_fmerge() argument 2386 struct bfq_data *bfqd = bfqq->bfqd; bfq_remove_request() local 2450 struct bfq_data *bfqd = q->elevator->elevator_data; bfq_bio_merge() local 2483 struct bfq_data *bfqd = q->elevator->elevator_data; bfq_request_merge() local 2507 struct bfq_data *bfqd; bfq_request_merged() local 2628 bfq_end_wr_async_queues(struct bfq_data * bfqd,struct bfq_group * bfqg) bfq_end_wr_async_queues() argument 2643 bfq_end_wr(struct bfq_data * bfqd) bfq_end_wr() argument 2676 bfqq_find_close(struct bfq_data * bfqd,struct bfq_queue * bfqq,sector_t sector) bfqq_find_close() argument 2718 bfq_find_close_cooperator(struct bfq_data * bfqd,struct bfq_queue * cur_bfqq,sector_t sector) bfq_find_close_cooperator() argument 2847 bfq_setup_stable_merge(struct bfq_data * bfqd,struct bfq_queue * bfqq,struct bfq_queue * stable_merge_bfqq,struct bfq_iocq_bfqq_data * bfqq_data) bfq_setup_stable_merge() argument 2901 bfq_setup_cooperator(struct bfq_data * bfqd,struct bfq_queue * bfqq,void * io_struct,bool request,struct bfq_io_cq * bic) bfq_setup_cooperator() argument 3105 bfq_release_process_ref(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_release_process_ref() argument 3127 bfq_merge_bfqqs(struct bfq_data * bfqd,struct bfq_io_cq * bic,struct bfq_queue * bfqq) bfq_merge_bfqqs() argument 3233 struct bfq_data *bfqd = q->elevator->elevator_data; bfq_allow_bio_merge() local 3284 bfq_set_budget_timeout(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_set_budget_timeout() argument 3300 __bfq_set_in_service_queue(struct bfq_data * bfqd,struct bfq_queue * bfqq) __bfq_set_in_service_queue() argument 3357 bfq_set_in_service_queue(struct bfq_data * bfqd) bfq_set_in_service_queue() argument 3365 bfq_arm_slice_timer(struct bfq_data * bfqd) bfq_arm_slice_timer() argument 3409 bfq_calc_max_budget(struct bfq_data * bfqd) bfq_calc_max_budget() argument 3420 update_thr_responsiveness_params(struct bfq_data * bfqd) update_thr_responsiveness_params() argument 3429 bfq_reset_rate_computation(struct bfq_data * bfqd,struct request * rq) bfq_reset_rate_computation() argument 3447 bfq_update_rate_reset(struct bfq_data * bfqd,struct request * rq) bfq_update_rate_reset() argument 3588 bfq_update_peak_rate(struct bfq_data * bfqd,struct request * rq) bfq_update_peak_rate() argument 3873 idling_needed_for_service_guarantees(struct bfq_data * bfqd,struct bfq_queue * bfqq) idling_needed_for_service_guarantees() argument 3889 __bfq_bfqq_expire(struct bfq_data * bfqd,struct bfq_queue * bfqq,enum bfqq_expiration reason) __bfq_bfqq_expire() argument 3957 __bfq_bfqq_recalc_budget(struct bfq_data * bfqd,struct bfq_queue * bfqq,enum bfqq_expiration reason) __bfq_bfqq_recalc_budget() argument 4149 bfq_bfqq_is_slow(struct bfq_data * bfqd,struct bfq_queue * bfqq,bool compensate,unsigned long * delta_ms) bfq_bfqq_is_slow() argument 4298 bfq_bfqq_softrt_next_start(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_bfqq_softrt_next_start() argument 4334 bfq_bfqq_expire(struct bfq_data * bfqd,struct bfq_queue * bfqq,bool compensate,enum bfqq_expiration reason) bfq_bfqq_expire() argument 4486 idling_boosts_thr_without_issues(struct bfq_data * bfqd,struct bfq_queue * bfqq) idling_boosts_thr_without_issues() argument 4588 struct bfq_data *bfqd = bfqq->bfqd; bfq_better_to_idle() local 4650 bfq_choose_bfqq_for_injection(struct bfq_data * bfqd) bfq_choose_bfqq_for_injection() argument 4741 bfq_find_active_bfqq_for_actuator(struct bfq_data * bfqd,int idx) bfq_find_active_bfqq_for_actuator() argument 4774 bfq_find_bfqq_for_underused_actuator(struct bfq_data * bfqd) bfq_find_bfqq_for_underused_actuator() argument 4798 bfq_select_queue(struct bfq_data * bfqd) bfq_select_queue() argument 5032 bfq_update_wr_data(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_update_wr_data() argument 5100 bfq_dispatch_rq_from_bfqq(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_dispatch_rq_from_bfqq() argument 5146 struct bfq_data *bfqd = hctx->queue->elevator->elevator_data; bfq_has_work() local 5158 struct bfq_data *bfqd = hctx->queue->elevator->elevator_data; __bfq_dispatch_request() local 5299 struct bfq_data *bfqd = hctx->queue->elevator->elevator_data; bfq_dispatch_request() local 5434 bfq_exit_bfqq(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_exit_bfqq() argument 5452 struct bfq_data *bfqd; bfq_exit_icq_bfqq() local 5480 struct bfq_data *bfqd = bic_to_bfqd(bic); bfq_exit_icq() local 5510 struct bfq_data *bfqd = bfqq->bfqd; bfq_set_next_ioprio_data() local 5562 struct bfq_data *bfqd = bic_to_bfqd(bic); bfq_check_ioprio_change() local 5589 bfq_init_bfqq(struct bfq_data * bfqd,struct bfq_queue * bfqq,struct bfq_io_cq * bic,pid_t pid,int is_sync,unsigned int act_idx) bfq_init_bfqq() argument 5659 bfq_async_queue_prio(struct bfq_data * bfqd,struct bfq_group * bfqg,int ioprio_class,int ioprio,int act_idx) bfq_async_queue_prio() argument 5679 bfq_do_early_stable_merge(struct bfq_data * bfqd,struct bfq_queue * bfqq,struct bfq_io_cq * bic,struct bfq_queue * last_bfqq_created) bfq_do_early_stable_merge() argument 5750 bfq_do_or_sched_stable_merge(struct bfq_data * bfqd,struct bfq_queue * bfqq,struct bfq_io_cq * bic) bfq_do_or_sched_stable_merge() argument 5829 bfq_get_queue(struct bfq_data * bfqd,struct bio * bio,bool is_sync,struct bfq_io_cq * bic,bool respawn) bfq_get_queue() argument 5889 bfq_update_io_thinktime(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_update_io_thinktime() argument 5912 bfq_update_io_seektime(struct bfq_data * bfqd,struct bfq_queue * bfqq,struct request * rq) bfq_update_io_seektime() argument 5942 bfq_update_has_short_ttime(struct bfq_data * bfqd,struct bfq_queue * bfqq,struct bfq_io_cq * bic) bfq_update_has_short_ttime() argument 6074 bfq_rq_enqueued(struct bfq_data * bfqd,struct bfq_queue * bfqq,struct request * rq) bfq_rq_enqueued() argument 6147 __bfq_insert_request(struct bfq_data * bfqd,struct request * rq) __bfq_insert_request() argument 6240 struct bfq_data *bfqd = q->elevator->elevator_data; bfq_insert_request() local 6305 bfq_update_hw_tag(struct bfq_data * bfqd) bfq_update_hw_tag() argument 6346 bfq_completed_request(struct bfq_queue * bfqq,struct bfq_data * bfqd) bfq_completed_request() argument 6582 bfq_update_inject_limit(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_update_inject_limit() argument 6648 struct bfq_data *bfqd; bfq_finish_requeue_request() local 6737 __bfq_get_bfqq_handle_split(struct bfq_data * bfqd,struct bfq_io_cq * bic,struct bio * bio,bool split,bool is_sync,bool * new_queue) __bfq_get_bfqq_handle_split() argument 6851 bfq_get_bfqq_handle_split(struct bfq_data * bfqd,struct bfq_io_cq * bic,struct bio * bio,unsigned int idx,bool is_sync) bfq_get_bfqq_handle_split() argument 6931 struct bfq_data *bfqd = q->elevator->elevator_data; bfq_init_rq() local 7003 bfq_idle_slice_timer_body(struct bfq_data * bfqd,struct bfq_queue * bfqq) bfq_idle_slice_timer_body() argument 7055 struct bfq_data *bfqd = container_of(timer, struct bfq_data, bfq_idle_slice_timer() local 7073 __bfq_put_async_bfqq(struct bfq_data * bfqd,struct bfq_queue ** bfqq_ptr) __bfq_put_async_bfqq() argument 7095 bfq_put_async_queues(struct bfq_data * bfqd,struct bfq_group * bfqg) bfq_put_async_queues() argument 7114 struct bfq_data *bfqd = q->elevator->elevator_data; bfq_depth_updated() local 7143 struct bfq_data *bfqd = e->elevator_data; bfq_exit_queue() local 7180 bfq_init_root_group(struct bfq_group * root_group,struct bfq_data * bfqd) bfq_init_root_group() argument 7197 struct bfq_data *bfqd; bfq_init_queue() local 7486 struct bfq_data *bfqd = e->elevator_data; bfq_max_budget_store() local 7514 struct bfq_data *bfqd = e->elevator_data; bfq_timeout_sync_store() local 7537 struct bfq_data *bfqd = e->elevator_data; bfq_strict_guarantees_store() local 7559 struct bfq_data *bfqd = e->elevator_data; bfq_low_latency_store() local [all...] |