Skip to content

Per-CPU-variable updates

Paul E. McKenney lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest0 of 9 patches 1 replyIn review

Patches in v1 No applies recorded yet

None of the 9 patches the cover letter announces are in this archive.

Reviews trailers per patch

PatchChristoph LameterPranith Kumar
SeriesR-b Reviewd-by R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH tip/core/rcu 0/9] Per-CPU-variable updates

Hello!

This series updates RCU's handling of per-CPU variables, mostly moving from "cpu" function arguments to various "this_"-style accessors for per-CPU variables:

1. Drop the rdtp argument from RCU's dyntick-idle and sysidle
functions, substituting this_cpu_ptr(), courtesy of Christoph Lameter.

2. Use DEFINE_PER_CPU_SHARED_ALIGNED for rcu_data structures in
order to avoid false sharing with other per-CPU variables.

3-9. Remove "cpu" arguments from a number of RCU functions that are
only ever invoked on that CPU, and use appropriate "this_"-style accesssors for the per-CPU variables.

Thanx, Paul

------------------------------------------------------------------------

 b/include/linux/rcupdate.h |    2 +-
 b/include/linux/rcutiny.h  |    2 +-
 b/include/linux/rcutree.h  |    4 ++--
 b/kernel/cpu.c             |   19 +++++++++++++------
 b/kernel/rcu/tiny.c        |    2 +-
 b/kernel/rcu/tree.c        |   25 +++++++++++++------------
 b/kernel/rcu/tree.h        |    4 ++--
 b/kernel/rcu/tree_plugin.h |   11 +++++++----
 b/kernel/sched/core.c      |    2 +-
 b/kernel/softirq.c         |    2 +-
 b/kernel/time/tick-sched.c |    2 +-
 b/kernel/time/timer.c      |    3 +--
 include/linux/rcupdate.h   |    2 +-
 include/linux/rcutree.h    |    2 +-
 kernel/rcu/tree.c          |   30 +++++++++++++++---------------
 kernel/rcu/tree.h          |    8 ++++----
 kernel/rcu/tree_plugin.h   |   42 +++++++++++++++++++++---------------------
 17 files changed, 86 insertions(+), 76 deletions(-)