Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:q_bfqq_served - update the scheduler status after selection for* service.*@bfqq: the queue being served.*@served: bytes to transfer.* NOTE: this can be optimized, as the timestamps of upper level entities

Proto:void bfq_bfqq_served(struct bfq_queue *bfqq, int served)

Type:void

Parameter:

TypeParameterName
struct bfq_queue *bfqq
intserved
837  entity = ity representing this queue in the scheduler
840  If Not Cumulative service received from the @bfq_queue since the* last transition from idle to backlogged. Then ime of first I/O for this queue = jiffies
843  If actor by which the weight of this queue is multiplied > 1 Then Cumulative service received from the @bfq_queue since its* last transition to weight-raised state. += served
846  Cumulative service received from the @bfq_queue since the* last transition from idle to backlogged. += served
848  st = bfq_entity_service_tree(entity)
850  amount of service received during the last service slot += served
852  scheduler virtual time += q_delta - map service into the virtual time domain.*@service: amount of service.*@weight: scale factor (weight of an entity or weight sum).
853  q_forget_idle - update the idle tree if necessary.*@st: the service tree to act upon.* To preserve the global O(log N) complexity we only remove one entry here;* as the idle tree will not grow indefinitely this can be done safely.
855  bfq_log_bfqq(parent bfq_data , bfqq, "bfqq_served %d secs", served)
Caller
NameDescribe
bfq_bfqq_charge_timeq_bfqq_charge_time - charge an amount of service equivalent to the length* of the time interval during which bfqq has been in* service