函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:q_bfqq_charge_time - charge an amount of service equivalent to the length* of the time interval during which bfqq has been in* service

函数原型:void bfq_bfqq_charge_time(struct bfq_data *bfqd, struct bfq_queue *bfqq, unsigned long time_ms)

返回类型:void

参数:

类型参数名称
struct bfq_data *bfqd
struct bfq_queue *bfqq
unsigned longtime_ms
888  entity等于ity representing this queue in the scheduler
889  timeout_ms等于Convert jiffies to milliseconds and back.* Avoid unnecessary multiplications/divisions in the* two most common HZ cases:
890  bounded_time_ms等于两数取小(time_ms, timeout_ms)
891  serv_to_charge_for_time等于 maximum budget allotted to a bfq_queue before rescheduling bounded_time_mstimeout_ms
893  tot_serv_to_charge等于两数取大(serv_to_charge_for_time, amount of service received during the last service slot )
896  如果tot_serv_to_charge大于 budget, used also to calculate F_i: F_i = S_i + @budget / @weight budget, used also to calculate F_i: F_i = S_i + @budget / @weight 等于tot_serv_to_charge
899  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