函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\rcu\tree.c Create Date:2022-07-27 11:27:41
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Helper function for rcu_init() that initializes the rcu_state structure.

函数原型:static void __init rcu_init_one(void)

返回类型:void

参数:

3379  buf[]等于RCU_NODE_NAME_INIT
3380  fqs[]等于RCU_FQS_NAME_INIT
3385  cpustride等于1
3390  BUILD_BUG_ON - break compile if a condition is true(RCU_NUM_LVLS > ARRAY_SIZE - get the number of elements in array @arr*@arr: array to be sized(buf))
3393  如果rcu_num_lvls小于等于0或rcu_num_lvls大于RCU_NUM_LVLSpanic - halt the system*@fmt: The text string to print* Display a message, then perform cleanups.* This function never returns.
3398 i小于rcu_num_lvls循环level[i]等于level[i - 1]加Number of rcu_nodes at specified level. [i - 1]
3401  Compute the per-level fanout, either using the exact fanout specified* or balancing the tree, depending on the rcu_fanout_exact boot parameter.
3405 i大于等于0循环
3406  cpustride乘等于levelspread[i]
3407  rnp等于level[i]
3419  qsmaskinit等于0
3421  highest-numbered CPU or group here. 等于j加1的和乘cpustride减1
3424  如果i恒等于0则
3428  否则
3434  is at level 0. 等于i
3437  init_waitqueue_head( & exp_wq[0])
3438  init_waitqueue_head( & exp_wq[1])
3439  init_waitqueue_head( & exp_wq[2])
3440  init_waitqueue_head( & exp_wq[3])
3445  init_swait_queue_head( & Where GP task waits. )
3446  init_swait_queue_head( & Wait for check-ins. )
3447  rnp等于Returns a pointer to the first leaf rcu_node structure. ()
3448  遍历可用CPU(i)
3449 i大于highest-numbered CPU or group here. 循环
3450  rnp自加
3451  ({
3451  ({
3451  循环
3451  const void * __vpp_verify = NULL
3451  当0循环
3451  rcu_data
3451  })
3451  })->mynode = rnp
3452  Do boot-time initialization of a CPU's per-CPU RCU data.
调用者
名称描述
rcu_init初始化直接读拷贝更新的锁机制