Skip to content

RFC Consolidate RCU dyntick-idle counter manipulation

Paul E. McKenney lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest5 patches 2 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/5rcu: Abstract the dynticks momentary-idle operationkernel/rcu/tree.c+14 -50 replies
2/5rcu: Abstract the dynticks snapshot operationkernel/rcu/tree.c kernel/rcu/tree_exp.h+18 -70 replies
3/5rcu: Abstract dynticks extended quiescent state enter/exit operationskernel/rcu/tree.c+66 -261 reply
4/5rcu: Abstract extended quiescent state determinationinclude/linux/rcutiny.h kernel/rcu/tree.c kernel/rcu/tree.h +3 more+51 -190 replies
5/5rcu: Maintain special bits at bottom of ->dynticks counterinclude/linux/rcutiny.h kernel/rcu/tree.c kernel/rcu/tree.h+67 -201 reply

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH RFC tip/core/rcu 0/5] Consolidate RCU dyntick-idle counter manipulation

Hello!

The first four patches of this series consolidate RCU's dyntick-idle counter manipulations into a set of access functions. These are currently queued for 4.12 (merge window after next). The last patch in this series uses the bottom bit of RCU's dyntick-idle counter to track a CPU's state, and has been proposed to track the need to flush the local CPU's TLB. This last patch will not be pushed until it has a use.

The patches are as follows:

1. Abstract the dynticks momentary-idle operation.

2. Abstract the dynticks snapshot operation.

3. Abstract dynticks extended quiescent state enter/exit operations.

4. Abstract extended quiescent state determination.

5. Maintain special bits at bottom of ->dynticks counter, which
might be used to track a given CPU's need to flush TLBs.

Thanx, Paul

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

 include/linux/rcutiny.h  |   11 +
 kernel/rcu/tree.c        |  263 ++++++++++++++++++++++++++++++++++-------------
 kernel/rcu/tree.h        |    3 
 kernel/rcu/tree_exp.h    |   12 --
 kernel/rcu/tree_plugin.h |    2 
 kernel/rcu/tree_trace.c  |    2 
 6 files changed, 216 insertions(+), 77 deletions(-)