函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:current_hweight

函数原型:static void current_hweight(struct ioc_gq *iocg, unsigned int *hw_activep, unsigned int *hw_inusep)

返回类型:void

参数:

类型参数名称
struct ioc_gq *iocg
unsigned int *hw_activep
unsigned int *hw_inusep
959  ioc等于ioc
965  ioc_gen等于atomic_read( & r lazy hweights )
966  如果ioc_gen恒等于hweight_gen则转到:out
979  smp_rmb()
981  hwa等于hwi等于HWEIGHT_WHOLE
982 lvl小于等于 this iocg's depth in the hierarchy and ancestors including self 减1循环
983  parent等于ancestors[lvl]
984  child等于ancestors[lvl + 1]
985  active_sum等于READ_ONCE( see __propagate_active_weight() and current_hweight() for details )
986  inuse_sum等于READ_ONCE(child_inuse_sum)
987  active等于READ_ONCE(active)
988  inuse等于READ_ONCE(inuse)
991  如果非active_sum或非inuse_sum则继续下一循环
994  active_sum等于两数取大(active, active_sum)
995  hwa等于hwaactiveactive_sum
997  inuse_sum等于两数取大(inuse, inuse_sum)
998  hwi等于hwiinuseinuse_sum
1001  hweight_active等于max_t - return maximum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(u32, hwa, 1)
1002  hweight_inuse等于max_t - return maximum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(u32, hwi, 1)
1003  hweight_gen等于ioc_gen
1004  out :
1005  如果hw_activephw_activep等于hweight_active
1007  如果hw_inusephw_inusep等于hweight_inuse
调用者
名称描述
iocg_kick_waitq
iocg_kick_delay
ioc_timer_fn
ioc_rqos_throttle
ioc_rqos_merge