]> git.baikalelectronics.ru Git - kernel.git/commit
rcu: Shrink RCU based on number of CPUs
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 6 Sep 2012 22:38:02 +0000 (15:38 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 23 Sep 2012 14:41:56 +0000 (07:41 -0700)
commite73133cae98d5f231c271e0f6c3b8dea34735bb8
tree995c37771f64470dda04e631a8223e74d6713b0a
parent7b9dce6839d5623a3c62112cdc59cb9857d08a47
rcu: Shrink RCU based on number of CPUs

Currently, rcu_init_geometry() only reshapes RCU's combining trees
if the leaf fanout is changed at boot time.  This means that by
default, kernels compiled with (say) NR_CPUS=4096 will keep oversized
data structures, even when running on systems with (say) four CPUs.

This commit therefore checks to see if the maximum number of CPUs on
the actual running system (nr_cpu_ids) differs from NR_CPUS, and if so
reshapes the combining trees accordingly.

Reported-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcutree.c