Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:latency Qos params changed, update period_us and all the dependent params

Proto:static void ioc_refresh_period_us(struct ioc *ioc)

Type:void

Parameter:

TypeParameterName
struct ioc *ioc
686  lockdep_assert_held( & lock)
689  If qos[QOS_RLAT] >= qos[QOS_WLAT] Then
690  ppm = qos[QOS_RPPM]
691  lat = qos[QOS_RLAT]
692  Else
693  ppm = qos[QOS_WPPM]
694  lat = qos[QOS_WLAT]
705  If ppm Then multi = max_t - return maximum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(u32, (MILLION - ppm) / 50000, 2)
707  Else multi = 2
709  period_us = multi * lat
710  period_us = clamp_t - return a value clamped to a given range using a given type*@type: the type of variable to use*@val: current value*@lo: minimum allowable value*@hi: maximum allowable value* This macro does no typechecking and uses temporary variables of type(u32, period_us, MIN_PERIOD, MAX_PERIOD)
713  period_us = period_us
714  margin_us = period_us * MARGIN_PCT / 100
715  inuse_margin_vtime = DIV64_U64_ROUND_UP(period_us * VTIME_PER_USEC * INUSE_MARGIN_PCT, 100)
Caller
NameDescribe
ioc_refresh_params