Skip to content

Remove rcu_state pointers for v4.20/v5.0

Paul E. McKenney lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest52 patches 9 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/52rcu: Remove rsp parameter from rcu_report_qs_rnp()kernel/rcu/tree.c+11 -120 replies
2/52rcu: Remove rsp parameter from rcu_report_qs_rsp()kernel/rcu/tree.c+10 -60 replies
3/52rcu: Remove rsp parameter from rcu_report_unblock_qs_rnp()kernel/rcu/tree.c kernel/rcu/tree_plugin.h+2 -30 replies
4/52rcu: Remove rsp parameter from rcu_report_qs_rdp()kernel/rcu/tree.c+3 -20 replies
5/52rcu: Remove rsp parameter from rcu_gp_in_progress()kernel/rcu/tree.c kernel/rcu/tree_plugin.h+16 -160 replies
6/52rcu: Remove rsp parameter from rcu_get_root()kernel/rcu/tree.c kernel/rcu/tree_exp.h kernel/rcu/tree_plugin.h+23 -230 replies
7/52rcu: Remove rsp parameter from record_gp_stall_check_time()kernel/rcu/tree.c+6 -60 replies
8/52rcu: Remove rsp parameter from rcu_check_gp_kthread_starvation()kernel/rcu/tree.c+4 -30 replies
9/52rcu: Remove rsp parameter from rcu_dump_cpu_stacks()kernel/rcu/tree.c+4 -40 replies
10/52rcu: Remove rsp parameter from rcu_stall_kick_kthreads()kernel/rcu/tree.c+5 -40 replies
11/52rcu: Remove rsp parameter from print_other_cpu_stall()kernel/rcu/tree.c+3 -20 replies
12/52rcu: Remove rsp parameter from print_cpu_stall()kernel/rcu/tree.c+3 -20 replies
13/52rcu: Remove rsp parameter from check_cpu_stall()kernel/rcu/tree.c+3 -20 replies
14/52rcu: Remove rsp parameter from rcu_future_gp_cleanup()kernel/rcu/tree.c+2 -20 replies
15/52rcu: Remove rsp parameter from rcu_gp_kthread_wake()kernel/rcu/tree.c kernel/rcu/tree_plugin.h+13 -130 replies
16/52rcu: Remove rsp parameter from rcu_accelerate_cbs()kernel/rcu/tree.c kernel/rcu/tree_plugin.h+8 -90 replies
17/52rcu: Remove rsp parameter from rcu_accelerate_cbs_unlocked()kernel/rcu/tree.c+4 -50 replies
18/52rcu: Remove rsp parameter from rcu_advance_cbs()kernel/rcu/tree.c+4 -50 replies
19/52rcu: Remove rsp parameter from __note_gp_changes()kernel/rcu/tree.c+5 -50 replies
20/52rcu: Remove rsp parameter from note_gp_changes()kernel/rcu/tree.c kernel/rcu/tree_plugin.h+4 -40 replies
21/52rcu: Remove rsp parameter from rcu_gp_slow()kernel/rcu/tree.c+5 -50 replies
22/52rcu: Remove rsp parameter from rcu_gp_kthread() and friendskernel/rcu/tree.c+15 -120 replies
23/52rcu: Remove rsp parameter from rcu_check_quiescent_state()kernel/rcu/tree.c+2 -20 replies
24/52rcu: Remove rsp parameter from CPU hotplug functionskernel/rcu/tree.c+11 -320 replies
25/52rcu: Remove rsp parameter from rcu_do_batch()kernel/rcu/tree.c kernel/rcu/tree_plugin.h+4 -30 replies
26/52rcu: Remove rsp parameter from force-quiescent-state functionskernel/rcu/tree.c+12 -100 replies
27/52rcu: Remove rsp parameter from rcu_check_gp_start_stall()kernel/rcu/tree.c+3 -30 replies
28/52rcu: Remove rsp parameter from __rcu_process_callbacks()kernel/rcu/tree.c+7 -190 replies
29/52rcu: Remove rsp parameter from __call_rcu() and friendkernel/rcu/tree.c+10 -100 replies
30/52rcu: Remove rsp parameter from __rcu_pending()kernel/rcu/tree.c+10 -240 replies
31/52rcu: Remove rsp parameter from _rcu_barrier() and friendskernel/rcu/tree.c+19 -220 replies
32/52rcu: Remove rsp parameter from rcu_boot_init_percpu_data() and friendskernel/rcu/tree.c+35 -670 replies
33/52rcu: Remove rsp parameter from rcu_init_one() and friendskernel/rcu/tree.c+6 -50 replies
34/52rcu: Remove rsp parameter from rcu_print_detail_task_stall()kernel/rcu/tree.c kernel/rcu/tree.h kernel/rcu/tree_plugin.h+5 -50 replies
35/52rcu: Remove rsp parameter from dump_blkd_tasks() and friendkernel/rcu/tree.c kernel/rcu/tree.h kernel/rcu/tree_plugin.h+9 -130 replies
36/52rcu: Remove rsp parameter from rcu_spawn_one_boost_kthread()kernel/rcu/tree.h kernel/rcu/tree_plugin.h+6 -110 replies
37/52rcu: Remove rsp parameter from print_cpu_stall_info()kernel/rcu/tree.c kernel/rcu/tree.h kernel/rcu/tree_plugin.h+6 -60 replies
38/52rcu: Remove rsp parameter from no-CBs CPU functionskernel/rcu/tree.c kernel/rcu/tree.h kernel/rcu/tree_plugin.h+14 -140 replies
39/52rcu: Remove rsp parameter from expedited grace-period functionskernel/rcu/tree.c kernel/rcu/tree.h kernel/rcu/tree_exp.h +1 more+94 -1090 replies
40/52rcu: Remove rsp parameter from rcu_node tree accessor macrosDocumentation/RCU/Design/Data-Structures/Data-Structures.html kernel/rcu/rcu.h kernel/rcu/srcutree.c +3 more+40 -560 replies
41/52rcu: Remove rcu_data structure's ->rsp fieldkernel/rcu/tree.c kernel/rcu/tree.h kernel/rcu/tree_plugin.h+34 -370 replies
42/52rcu: Remove last non-flavor-traversal rsp local variable from tree_plugin.hkernel/rcu/tree_plugin.h+6 -80 replies
43/52rcu: Remove for_each_rcu_flavor() flavor-traversal macrokernel/rcu/tree.c kernel/rcu/tree.h kernel/rcu/tree_plugin.h+92 -1460 replies
44/52rcu: Simplify rcutorture_get_gp_data()kernel/rcu/tree.c+2 -70 replies
45/52rcu: Restructure rcu_check_gp_kthread_starvation()kernel/rcu/tree.c+11 -140 replies
46/52rcu: Eliminate stall-warning use of rspkernel/rcu/tree.c+39 -410 replies
47/52rcu: Eliminate grace-period management code use of rspkernel/rcu/tree.c+82 -860 replies
48/52rcu: Eliminate callback-invocation/invocation use of rspkernel/rcu/tree.c+11 -130 replies
49/52rcu: Eliminate quiescent-state and grace-period-nonstart use of rspkernel/rcu/tree.c+15 -170 replies
50/52rcu: Eliminate RCU-barrier use of rspkernel/rcu/tree.c+32 -330 replies
51/52rcu: Eliminate initialization-time use of rspkernel/rcu/tree.c+12 -130 replies
52/52rcu: Fix typo in force_qs_rnp()'s parameter's parameterkernel/rcu/tree.c+2 -20 replies

Reviews trailers per patch

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

Read the v1 thread

Cover letter [PATCH tip/core/rcu 0/52] Remove rcu_state pointers for v4.20/v5.0

Hello!

This commit does RCU-consolidation cleanups that get rid of pointers to the sole remaining rcu_state structure:

1-40: Remove the "rsp" parameter from numerous functions, given that
the corresponding argument will always be &rcu_state.

41. Remove rcu_data structure's ->rsp field, now that it always
contains a pointer to rcu_state.

42. Remove non-flavor-traversal rsp local variable from tree_plugin.h.

43. Remove the for_each_rcu_flavor() flavor-traversal macro, given
that there is now only ever one flavor to traverse.

44. Simplify rcutorture_get_gp_data() based on there now being only
one rcu_state structure.

45. Restructure rcu_check_gp_kthread_starvation() based on there
now being only one rcu_state structure.

46. Restructure RCU CPU stall warnings based on there now being only
one rcu_state structure.

47. Restructure grace-period management code based on there now being
only one rcu_state structure.

48. Restructure callback registration/invocation code based on there
now being only one rcu_state structure.

49. Restructure quiescent-state and grace-period-nonstart code based
on there now being only one rcu_state structure.

50. Restructure rcu_barrier() based on there now being only one
rcu_state structure.

51. Restructure initialization code based on there now being only
one rcu_state structure.

52. Fix typo in force_qs_rnp()'s parameter's parameter, which was
located by searching for "rsp".

Thanx, Paul

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

 Documentation/RCU/Design/Data-Structures/Data-Structures.html |   23 
 kernel/rcu/rcu.h                                              |   28 
 kernel/rcu/srcutree.c                                         |    4 
 kernel/rcu/tree.c                                             | 1261 ++++------
 kernel/rcu/tree.h                                             |   29 
 kernel/rcu/tree_exp.h                                         |  209 -
 kernel/rcu/tree_plugin.h                                      |  203 -
 7 files changed, 784 insertions(+), 973 deletions(-)