Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:ioc_refresh_params

Proto:static bool ioc_refresh_params(struct ioc *ioc, bool force)

Type:bool

Parameter:

TypeParameterName
struct ioc *ioc
boolforce
821  lockdep_assert_held( & lock)
823  idx = ioc_autop_idx(ioc)
824  p = autop[idx]
826  If idx == autop_idx && Not force Then Return false
829  If idx != autop_idx Then atomic64_set( & vtime_rate, VTIME_PER_USEC)
832  autop_idx = idx
833  autop_too_fast_at = 0
834  autop_too_slow_at = 0
836  If Not user_qos_params Then memcpy(qos, qos, size of qos )
838  If Not user_cost_model Then memcpy(i_lcoefs, i_lcoefs, size of i_lcoefs )
841  latency Qos params changed, update period_us and all the dependent params
842  ioc_refresh_lcoefs(ioc)
844  vrate_min = DIV64_U64_ROUND_UP((u64)qos[QOS_MIN] * VTIME_PER_USEC, MILLION)
846  vrate_max = div64_u64 - unsigned 64bit divide with 64bit divisor*@dividend: 64bit dividend*@divisor: 64bit divisor* This implementation is a modified version of the algorithm proposed* by the book 'Hacker's Delight'. The original source and full proof
849  Return true
Caller
NameDescribe
ioc_timer_fn
ioc_rqos_queue_depth_changed
blk_iocost_init
ioc_qos_write
ioc_cost_model_write