Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\bfq-iosched.c Create Date:2022-07-28 17:57:43
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:The processes associated with bfqq may happen to generate their* cumulative I/O at a lower rate than the rate at which the device* could serve the same I/O. This is rather probable, e.g., if only

Proto:static void bfq_update_inject_limit(struct bfq_data *bfqd, struct bfq_queue *bfqq)

Type:void

Parameter:

TypeParameterName
struct bfq_data *bfqd
struct bfq_queue *bfqq
5834  tot_time_ns = ktime_get_ns() - time of last transition from empty to non-empty (ns)
5835  old_limit = limit for request injection
5837  If last total-service-time sample, see bfq_update_inject_limit() > 0 && * True if some request has been injected during the last service hole. Then
5838  threshold = last total-service-time sample, see bfq_update_inject_limit() * 3 >> 1
5840  If tot_time_ns >= threshold && old_limit > 0 Then
5843  Else if tot_time_ns < threshold && old_limit <= * Maximum number of requests in driver in the last *@hw_tag_samples completed requests. Then limit for request injection ++
5860  If last total-service-time sample, see bfq_update_inject_limit() == 0 && number of requests dispatched and waiting for completion == 1 || tot_time_ns < last total-service-time sample, see bfq_update_inject_limit() Then
5869  last total-service-time sample, see bfq_update_inject_limit() = tot_time_ns
5870  Else if Not * True if some request has been injected during the last service hole. && number of requests dispatched and waiting for completion == 1 Then last total-service-time sample, see bfq_update_inject_limit() = tot_time_ns
5884  * If set, then bfq_update_inject_limit() is invoked when * waited_rq is eventually completed. = NULL
5885  * True if some request has been injected during the last service hole. = false
Caller
NameDescribe
bfq_finish_requeue_requestHandle either a requeue or a finish for rq. The things to do are* the same in both cases: all references to rq are to be dropped. In* particular, rq is considered completed from the point of view of* the scheduler.