Skip to content

Initialization/Kconfig updates for 4.2

Paul E. McKenney lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest24 patches 17 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/24rcu: Control grace-period delays directly from valuekernel/rcu/tree.c lib/Kconfig.debug+10 -72 replies
2/24rcu: Modulate grace-period slow init to normalize delaykernel/rcu/tree.c+13 -20 replies
3/24rcu: Shut up spurious gcc uninitialized-variable warningkernel/rcu/tree.c+3 -30 replies
4/24rcu: Panic if RCU tree can not accommodate all CPUskernel/rcu/tree.c+9 -60 replies
5/24rcu: Remove superfluous local variable in rcu_init_geometry()kernel/rcu/tree.c+7 -70 replies
6/24rcu: Cleanup rcu_init_geometry() code and arithmeticskernel/rcu/tree.c+10 -143 replies
7/24rcu: Simplify rcu_init_geometry() capacity arithmeticskernel/rcu/tree.c+7 -90 replies
8/24rcu: Limit rcu_state::levelcnt[] to RCU_NUM_LVLS itemskernel/rcu/tree.h+1 -10 replies
9/24rcu: Limit rcu_capacity[] size to RCU_NUM_LVLS itemskernel/rcu/tree.c kernel/rcu/tree.h+6 -70 replies
10/24rcu: Remove unnecessary fields from rcu_state structurekernel/rcu/tree.c kernel/rcu/tree.h+15 -140 replies
11/24rcu: Limit count of static data to the number of RCU levelskernel/rcu/tree.c kernel/rcu/tree.h+16 -170 replies
12/24rcu: Simplify arithmetic to calculate number of RCU nodeskernel/rcu/tree.h kernel/rcu/tree_plugin.h+6 -150 replies
13/24rcu: Provide diagnostic option to slow down grace-period scansDocumentation/kernel-parameters.txt kernel/rcu/tree.c lib/Kconfig.debug +1 more+93 -80 replies
14/24rcu: Directly drive TASKS_RCU from Kconfiginit/Kconfig lib/Kconfig.debug+2 -32 replies
15/24rcu: Directly drive RCU_USER_QS from Kconfiginit/Kconfig+1 -94 replies
16/24rcu: Convert CONFIG_RCU_FANOUT_EXACT to boot parameterDocumentation/kernel-parameters.txt init/Kconfig kernel/rcu/tree.c +1 more+12 -170 replies
17/24rcu: Enable diagnostic dump of rcu_node combining treeDocumentation/kernel-parameters.txt kernel/rcu/tree.c+32 -00 replies
18/24rcu: Create RCU_EXPERT Kconfig and hide booleans behind itinit/Kconfig+17 -20 replies
19/24rcu: Break dependency of RCU_FANOUT_LEAF on RCU_FANOUTinit/Kconfig+2 -20 replies
20/24rcu: Make RCU able to tolerate undefined CONFIG_RCU_FANOUTinit/Kconfig kernel/rcu/tree.c kernel/rcu/tree.h +1 more+20 -90 replies
21/24rcu: Make RCU able to tolerate undefined CONFIG_RCU_FANOUT_LEAFinit/Kconfig kernel/rcu/tree.c kernel/rcu/tree.h +1 more+19 -90 replies
22/24rcu: Make RCU able to tolerate undefined CONFIG_RCU_KTHREAD_PRIOinit/Kconfig kernel/rcu/tree.c+5 -00 replies
23/24rcu: Remove prompt for RCU implementationinit/Kconfig+6 -120 replies
24/24rcu: Conditionally compile RCU's eqs warningskernel/rcu/tree.c lib/Kconfig.debug+26 -86 replies

Reviews trailers per patch

9 of 24 patches have a Reviewed-by or Acked-by.

PatchPranith Kumar
1/24
2/24
3/24
4/24
5/24
6/24
7/24
8/24
9/24
10/24
11/24
12/24
13/24
14/24R-b
15/24R-b
16/24R-b
17/24R-b
18/24R-b
19/24R-b
20/24R-b
21/24R-b
22/24R-b
23/24
24/24

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/24] Initialization/Kconfig updates for 4.2

Hello!

This series updates initialization and Kconfig:

1. Control grace-period delays directly from value, avoiding
pointless Kconfig questions.

2. Modulate grace-period slow init to normalize delay.

3. Shut up spurious gcc uninitialized-variable warning.

4. Panic if RCU tree can not accommodate all CPUs, courtesy of
Alexander Gordeev.

5. Remove superfluous local variable in rcu_init_geometry(), courtesy
of Alexander Gordeev.

6. Clean up rcu_init_geometry() code and arithmetic, courtesy of
Alexander Gordeev.

7. Simplify rcu_init_geometry() capacity arithmetic, courtesy of
Alexander Gordeev.

8. Limit rcu_state::levelcnt[] to RCU_NUM_LVLS items, courtesy of
Alexander Gordeev.

9. Limit rcu_capacity[] size to RCU_NUM_LVLS items, courtesy of
Alexander Gordeev.

10. Remove unnecessary fields from rcu_state structure, courtesy
of Alexander Gordeev.

11. Limit count of static data to the number of RCU levels, courtesy
of Alexander Gordeev.

12. Simplify calculation of the number of RCU nodes, courtesy of
Alexander Gordeev.

13. Provide diagnostic option to slow down grace-period scans.

14. Directly drive CONFIG_TASKS_RCU from Kconfig.

15. Directly drive CONFIG_RCU_USER_QS from Kconfig.

16. Convert CONFIG_RCU_FANOUT_EXACT to boot parameter.

17. Enable diagnostic dump of rcu_node combining tree.

18. Create CONFIG_RCU_EXPERT Kconfig and hide boolean Kconfig parameters
behind it.

19. Break dependency of CONFIG_RCU_FANOUT_LEAF on CONFIG_RCU_FANOUT.

20. Make RCU able to tolerate undefined CONFIG_RCU_FANOUT.

21. Make RCU able to tolerate undefined CONFIG_RCU_FANOUT_LEAF.

22. Make RCU able to tolerate undefined CONFIG_RCU_KTHREAD_PRIO.

23. Remove prompt for RCU implementation.

24. Conditionally compile RCU's eqs warnings in order to shave a bit
of time off of kernel/user and kernel/idle transitions.

Thanx, Paul

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

 b/Documentation/kernel-parameters.txt                     |   27 +
 b/init/Kconfig                                            |   74 +--
 b/kernel/rcu/tree.c                                       |  268 ++++++++------
 b/kernel/rcu/tree.h                                       |   63 ++-
 b/kernel/rcu/tree_plugin.h                                |   18 
 b/lib/Kconfig.debug                                       |   67 +++
 b/tools/testing/selftests/rcutorture/configs/rcu/CFcommon |    2 
 7 files changed, 338 insertions(+), 181 deletions(-)