linux_dsm_epyc7002/kernel/rcu
Paul E. McKenney 11bbb235c2 rcu: Use DEFINE_PER_CPU_SHARED_ALIGNED for rcu_data
The rcu_data per-CPU variable has a number of fields that are atomically
manipulated, potentially by any CPU.  This situation can result in false
sharing with per-CPU variables that have the misfortune of being allocated
adjacent to rcu_data in memory.  This commit therefore changes the
DEFINE_PER_CPU() to DEFINE_PER_CPU_SHARED_ALIGNED() in order to avoid
this false sharing.

Reported-by: Christoph Lameter <cl@linux.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Christoph Lameter <cl@linux.com>
Reviewed-by: Pranith Kumar <bobby.prani@gmail.com>
2014-11-03 19:20:03 -08:00
..
Makefile rcutorture: Abstract rcu_torture_random() 2014-02-23 09:00:58 -08:00
rcu.h rcu: Fix __rcu_reclaim() to use true/false for bool 2014-07-09 09:15:32 -07:00
rcutorture.c rcutorture: Rename rcutorture_runnable parameter 2014-09-16 13:41:44 -07:00
srcu.c rcu: Eliminate read-modify-write ACCESS_ONCE() calls 2014-07-09 09:14:49 -07:00
tiny_plugin.h rcu: Protect uses of ->jiffies_stall with ACCESS_ONCE() 2014-04-29 08:44:41 -07:00
tiny.c Merge branch 'rcu-tasks.2014.09.10a' into HEAD 2014-09-16 10:10:44 -07:00
tree_plugin.h rcu: Remove rcu_dynticks * parameters when they are always this_cpu_ptr(&rcu_dynticks) 2014-11-03 19:19:26 -08:00
tree_trace.c rcu: Stop tracking FSF's postal address 2014-02-17 15:01:37 -08:00
tree.c rcu: Use DEFINE_PER_CPU_SHARED_ALIGNED for rcu_data 2014-11-03 19:20:03 -08:00
tree.h rcu: Remove rcu_dynticks * parameters when they are always this_cpu_ptr(&rcu_dynticks) 2014-11-03 19:19:26 -08:00
update.c Merge branch 'rcu-tasks.2014.09.10a' into HEAD 2014-09-16 10:10:44 -07:00