Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\rcu\tree.c Create Date:2022-07-28 10:27:28
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Compute the rcu_node tree geometry from kernel parameters. This cannot* replace the definitions in tree.h because those are needed to size* the ->node array in the rcu_state structure.

Proto:static void __init rcu_init_geometry(void)

Type:void

Parameter:Nothing

3474  d = RCU_JIFFIES_TILL_FORCE_QS + nr_cpu_ids / Very large systems need more
3475  If jiffies_till_first_fqs == ULONG_MAX Then jiffies_till_first_fqs = d
3477  If jiffies_till_next_fqs == ULONG_MAX Then jiffies_till_next_fqs = d
3479  Make sure that we give the grace-period kthread time to detect any* idle CPUs before taking active measures to force quiescent states.* However, don't go below 100 milliseconds, adjusted upwards for really* large systems.
3482  If Increase (but not decrease) the RCU_FANOUT_LEAF at boot time. == RCU_FANOUT_LEAF && nr_cpu_ids == Places which use this should consider cpumask_var_t. Then Return
3485  pr_info("Adjusting geometry for rcu_fanout_leaf=%d, nr_cpu_ids=%u\n", Increase (but not decrease) the RCU_FANOUT_LEAF at boot time. , nr_cpu_ids)
3494  If Increase (but not decrease) the RCU_FANOUT_LEAF at boot time. < 2 || Increase (but not decrease) the RCU_FANOUT_LEAF at boot time. > sizeof(unsignedlong) * 8 Then
3496  Increase (but not decrease) the RCU_FANOUT_LEAF at boot time. = RCU_FANOUT_LEAF
3497  WARN_ON(1)
3498  Return
3505  rcu_capacity[0] = Increase (but not decrease) the RCU_FANOUT_LEAF at boot time.
3506  When i < RCU_NUM_LVLS cycle rcu_capacity[i] = rcu_capacity[i - 1] * RCU_FANOUT
3513  If nr_cpu_ids > rcu_capacity[RCU_NUM_LVLS - 1] Then
3514  Increase (but not decrease) the RCU_FANOUT_LEAF at boot time. = RCU_FANOUT_LEAF
3515  WARN_ON(1)
3516  Return
3520  When nr_cpu_ids > rcu_capacity[i] cycle rcu_num_lvls = i + 1
3525  When i < rcu_num_lvls cycle
3526  cap = rcu_capacity[(rcu_num_lvls - 1) - i]
3527  Number of rcu_nodes at specified level. [i] = DIV_ROUND_UP(nr_cpu_ids, cap)
3531  rcu_num_nodes = 0
3532  When i < rcu_num_lvls cycle rcu_num_nodes += Number of rcu_nodes at specified level. [i]
Caller
NameDescribe
rcu_init