[PATCH rcu 0/19] SRCU updates for v5.18

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello!

This series provides SRCU updates, perhaps most notably some changes
that greatly reduce the size of the srcu_struct structure in kernels
built with large values for the CONFIG_NR_CPUS Kconfig option.

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.	Dynamically allocate srcu_node array.

5.	Make Tree SRCU able to operate without snp_node array.

6.	Add size-state transitioning code.

7.	Make rcutorture dump the SRCU size state.

8.	Add boot-time control over srcu_node array allocation.

9.	Use export for srcu_struct defined by DEFINE_STATIC_SRCU(),
	courtesy of Alexander Aring.

10.	Compute snp_seq earlier in srcu_funnel_gp_start().

11.	Use invalid initial value for srcu_node GP sequence numbers.

12.	Avoid NULL dereference in srcu_torture_stats_print().

13.	Prevent cleanup_srcu_struct() from freeing non-dynamic ->sda.

14.	Explain srcu_funnel_gp_start() call to list_add() is safe.

15.	Create concurrency-safe helper for initiating size transition.

16.	Add contention-triggered addition of srcu_node tree.

17.	Make srcu_size_state_name static, courtesy of Jiapeng Chong.

18.	Automatically determine size-transition strategy at boot.

19.	Add contention check to call_srcu() srcu_data ->lock acquisition.

						Thanx, Paul

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

 Documentation/admin-guide/kernel-parameters.txt   |    9 
 b/Documentation/admin-guide/kernel-parameters.txt |   22 
 b/include/linux/srcutree.h                        |    8 
 b/kernel/rcu/srcutree.c                           |    6 
 include/linux/srcutree.h                          |   20 
 kernel/rcu/srcutree.c                             |  644 +++++++++++++++-------
 6 files changed, 500 insertions(+), 209 deletions(-)



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux