Skip to content

Miscellaneous fixes for 3.17

Paul E. McKenney lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest17 patches 36 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/17rcu: Document deadlock-avoidance information for rcu_read_unlock()include/linux/rcupdate.h+28 -00 replies
2/17rcu: Handle obsolete references to TINY_PREEMPT_RCUinclude/linux/rcupdate.h init/Kconfig+9 -100 replies
3/17signal: Explain local_irq_save() callkernel/signal.c+4 -02 replies
4/17rcu: Make rcu node arrays static const char * constkernel/rcu/tree.c+10 -80 replies
5/17rcu: remove redundant ACCESS_ONCE() from tick_do_timer_cpukernel/rcu/tree_plugin.h+1 -11 reply
6/17rcu: Eliminate read-modify-write ACCESS_ONCE() callskernel/rcu/srcu.c kernel/rcu/tree.c+8 -84 replies
7/17rcu: Loosen __call_rcu()'s rcu_head alignment constraintkernel/rcu/tree.c+1 -10 replies
8/17rcu: Allow post-unlock reference for rt_mutexkernel/rcu/tree.h kernel/rcu/tree_plugin.h+12 -12 replies
9/17rcu: Check both root and current rcu_node when setting up future grace periodkernel/rcu/tree.c+8 -20 replies
10/17rcu: Simplify priority boosting by putting rt_mutex in rcu_nodeinclude/linux/init_task.h include/linux/sched.h kernel/rcu/tree.h +1 more+15 -280 replies
11/17rcu: Bind grace-period kthreads to non-NO_HZ_FULL CPUsinclude/linux/tick.h kernel/rcu/tree_plugin.h kernel/time/tick-sched.c+38 -524 replies
12/17rcu: Don't use NMIs to dump other CPUs' stackskernel/rcu/tree.c+3 -70 replies
13/17rcu: Use __this_cpu_read() instead of per_cpu_ptr()kernel/rcu/tree.c+1 -10 replies
14/17rcu: remove CONFIG_PROVE_RCU_DELAYkernel/rcu/tree.c kernel/rcu/update.c tools/testing/selftests/rcutorture/configs/rcu/TREE01 +10 more+0 -192 replies
15/17rcu: Fix __rcu_reclaim() to use true/false for boolkernel/rcu/rcu.h+6 -20 replies
16/17rcu: Fix a sparse warning in rcu_initiate_boost()kernel/rcu/tree_plugin.h+2 -00 replies
17/17rcu: Fix a sparse warning in rcu_report_unblock_qs_rnp()kernel/rcu/tree_plugin.h+1 -00 replies

Reviews trailers per patch

2 of 17 patches have a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchChristoph LameterJosh TriplettOleg NesterovLai Jiangshan
SeriesR-b
1/17
2/17
3/17A-b R-b
4/17
5/17
6/17
7/17
8/17
9/17
10/17
11/17
12/17
13/17A-b R-b
14/17
15/17
16/17
17/17

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 4 reviewers.

Read the v1 thread

Cover letter [PATCH tip/core/rcu 0/17] Miscellaneous fixes for 3.17

Hello!

This series provides miscellaneous fixes:

1. Document deadlock-avoidance information in rcu_read_unlock()'s
docbook comment header.

2. Remove obsolete references to TINY_PREEMPT_RCU.

3. Add deadlock explanation to local_irq_save() call in

	__lock_task_sighand().

4. Make the rcu_node arrays be static const char * const,
courtesy of Fabian Frederick.

5. Remove redundant ACCESS_ONCE() from tick_do_timer_cpu under

	#ifdef CONFIG_NO_HZ_FULL.

6. Eliminate read-modify-write ACCESS_ONCE() calls.

7. Loosen __call_rcu()'s rcu_head alignment constraint to handle

	m68k's 16-bit alignment.

8. Allow post-unlock reference for rt_mutex.

9. Check both root and current rcu_node structures when setting up
future grace periods, courtesy of Pranith Kumar.

10. Simplify priority boosting by putting rt_mutex in rcu_node
structure.

11. Bind grace-period kthreads to no-NO_HZ_FULL CPUs instead of the
timekeeping CPU, at least for CONFIG_NO_HZ_FULL_SYSIDLE=n.

12. Don't use NMIs to dump other CPUs' stacks.

13. Use __this_cpu_read() instead of per_cpu_ptr(), courtesy of Shan Wei.

14. Remove CONFIG_PROVE_RCU_DELAY.

15. Fix __rcu_reclaim to use true/false instead of 1/0.

16. Fix sparse warning in rcu_initiate_boost(), courtesy of Pranith
Kumar.

17. Fix sparse warning in rcu_report_unblock_qs_rnp(), again courtesy
of Pranith Kumar.

Thanx, Paul

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

 b/include/linux/init_task.h                               |    9 --
 b/include/linux/rcupdate.h                                |   45 ++++++++--
 b/include/linux/sched.h                                   |    6 -
 b/include/linux/tick.h                                    |   19 ++++
 b/init/Kconfig                                            |    2 
 b/kernel/rcu/rcu.h                                        |    8 +
 b/kernel/rcu/srcu.c                                       |    4 
 b/kernel/rcu/tree.c                                       |   59 ++++++--------
 b/kernel/rcu/tree.h                                       |    8 +
 b/kernel/rcu/tree_plugin.h                                |   52 +++++++-----
 b/kernel/rcu/update.c                                     |    3 
 b/kernel/signal.c                                         |    4 
 b/kernel/time/tick-sched.c                                |   10 ++
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE01   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE02   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE02-T |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE03   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE04   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE05   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE06   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE07   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE08   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE08-T |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE09   |    1 
 24 files changed, 147 insertions(+), 93 deletions(-)