[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220419000315.GA3948789@paulmck-ThinkPad-P17-Gen-1>
Date: Mon, 18 Apr 2022 17:03:15 -0700
From: "Paul E. McKenney" <paulmck@...nel.org>
To: rcu@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, kernel-team@...com,
rostedt@...dmis.org
Subject: [PATCH rcu 0/21] SRCU updates for v5.19
Hello!
This series contains SRCU updates, primarily reducing the srcu_struct
structure's infamous memory footprint.
1. Tighten cleanup_srcu_struct() GP checks.
2. Fix s/is/if/ typo in srcu_node comment.
3. Make srcu_funnel_gp_start() cache ->mynode in snp_leaf.
4. Make Tree SRCU able to operate without snp_node array.
5. Dynamically allocate srcu_node array.
6. Add size-state transitioning code.
7. Make rcutorture dump the SRCU size state.
8. Compute snp_seq earlier in srcu_funnel_gp_start().
9. Use invalid initial value for srcu_node GP sequence numbers.
10. Ensure snp nodes tree is fully initialized before traversal,
courtesy of Neeraj Upadhyay.
11. Add boot-time control over srcu_node array allocation.
12. Use export for srcu_struct defined by DEFINE_STATIC_SRCU(),
courtesy of Alexander Aring.
13. Avoid NULL dereference in srcu_torture_stats_print().
14. Prevent cleanup_srcu_struct() from freeing non-dynamic ->sda.
15. Explain srcu_funnel_gp_start() call to list_add() is safe.
16. Create concurrency-safe helper for initiating size transition.
17. Add contention-triggered addition of srcu_node tree.
18. Automatically determine size-transition strategy at boot.
19. Add contention check to call_srcu() srcu_data ->lock acquisition.
20. Prevent expedited GPs and blocking readers from consuming CPU.
21. Drop needless initialization of sdp in srcu_gp_start(), courtesy
of Lukas Bulwahn.
Thanx, Paul
------------------------------------------------------------------------
Documentation/admin-guide/kernel-parameters.txt | 18
b/Documentation/admin-guide/kernel-parameters.txt | 13
b/include/linux/srcutree.h | 8
b/kernel/rcu/srcutree.c | 6
include/linux/srcutree.h | 24
kernel/rcu/srcutree.c | 751 +++++++++++++++-------
6 files changed, 587 insertions(+), 233 deletions(-)
Powered by blists - more mailing lists