函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\bfq-iosched.c Create Date:2022-07-27 19:30:08
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:see the definition of bfq_async_charge_factor for details

函数原型:static unsigned long bfq_serv_to_charge(struct request *rq, struct bfq_queue *bfqq)

返回类型:unsigned long

参数:

类型参数名称
struct request *rq
struct bfq_queue *bfqq
921  如果bfq_bfqq_sync(bfqq)或actor by which the weight of this queue is multiplied 大于1或The following function returns false either if every active queue* must receive the same share of the throughput (symmetric scenario),* or, as a special case, if bfqq must receive a share of the* throughput lower than or equal to the share that every 则返回:blk_rq_sectors(rq)
925  返回:blk_rq_sectors(rq)乘When a sync request is dispatched, the queue that contains that* request, and all the ancestor entities of that queue, are charged* with the number of sectors of the request
调用者
名称描述
bfq_updated_next_reqq_updated_next_req - update the queue after a new next_rq selection
bfq_bfqq_update_budg_for_activationThe next function, invoked after the input queue bfqq switches from* idle to busy, updates the budget of bfqq. The function also tells* whether the in-service queue should be expired, by returning* true
__bfq_bfqq_recalc_budget__bfq_bfqq_recalc_budget - try to adapt the budget to the @bfqq behavior.*@bfqd: device data.*@bfqq: queue to update.*@reason: reason for expiration.* Handle the feedback on @bfqq budget at queue expiration.* See the body for detailed comments.
bfq_choose_bfqq_for_injectionThis function chooses the queue from which to pick the next extra* I/O request to inject, if it finds a compatible queue
bfq_select_queueSelect a queue for service. If we have a current queue in service,* check whether to continue servicing it, or retrieve and set a new one.
bfq_dispatch_rq_from_bfqqDispatch next request from bfqq.