rcu: Segregate rcu_state fields to improve cache locality
authorDimitri Sivanich <sivanich@sgi.com>
Fri, 29 Jun 2012 21:17:29 +0000 (14:17 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 23 Sep 2012 14:41:53 +0000 (07:41 -0700)
commitb402b73b3afe3614bc0e921ebe18013ea103115a
treed5f941ae2bbae05e496ff1b8415bffc30b6a80b8
parentb626c1b689364859ccd2e86d5e043aeadfeb2cd4
rcu: Segregate rcu_state fields to improve cache locality

The fields in the rcu_state structure that are protected by the
root rcu_node structure's ->lock can share a cache line with the
fields protected by ->onofflock.  This can result in excessive
memory contention on large systems, so this commit applies
____cacheline_internodealigned_in_smp to the ->onofflock field in
order to segregate them.

Signed-off-by: Dimitri Sivanich <sivanich@sgi.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Tested-by: Dimitri Sivanich <sivanich@sgi.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
kernel/rcutree.h