• P
    rcu: Size rcu_node tree from nr_cpu_ids rather than NR_CPUS · cca6f393
    Paul E. McKenney 提交于
    The rcu_node tree array is sized based on compile-time constants,
    including NR_CPUS.  Although this approach has worked well in the past,
    the recent trend by many distros to define NR_CPUS=4096 results in
    excessive grace-period-initialization latencies.
    
    This commit therefore substitutes the run-time computed nr_cpu_ids for
    the compile-time NR_CPUS when building the tree.  This can result in
    much of the compile-time-allocated rcu_node array being unused.  If
    this is a major problem, you are in a specialized situation anyway,
    so you can manually adjust the NR_CPUS, RCU_FANOUT, and RCU_FANOUT_LEAF
    kernel config parameters.
    Signed-off-by: NPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    cca6f393
rcutree.c 86.7 KB