All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH tip/core/rcu 0/12] RCU Kconfig fixes for v4.2
@ 2015-04-21 19:55 Paul E. McKenney
  2015-04-21 19:55 ` [PATCH tip/core/rcu 01/12] rcu: Directly drive TASKS_RCU from Kconfig Paul E. McKenney
  2015-04-22  5:26 ` [PATCH tip/core/rcu 0/12] RCU Kconfig fixes for v4.2 Pranith Kumar
  0 siblings, 2 replies; 20+ messages in thread
From: Paul E. McKenney @ 2015-04-21 19:55 UTC (permalink / raw)
  To: linux-kernel
  Cc: mingo, laijs, dipankar, akpm, mathieu.desnoyers, josh, tglx,
	peterz, rostedt, dhowells, edumazet, dvhart, fweisbec, oleg,
	bobby.prani

Hello!

This patch series reduces the number of questions that RCU asks Kconfig
users.  After this series is applied, removing the RCU-related definitions
from .config and running "make oldconfig" results in only the following:

RCU Implementation
> 1. Tree-based hierarchical RCU (TREE_RCU) (NEW)
choice[1]: 1
Make expert-level adjustments to RCU configuration (RCU_EXPERT) [N/y/?] (NEW)

Those expert users wishing to tune RCU answer Y to this question.

The patches in this series are as follows:

1.	Drive TASKS_RCU directly from Kconfig, for example, by having
	RCU_TORTURE_TESTS select it.

2.	Remove CONFIG_TASKS_RCU=y from the three TASKS_RCU test
	scenarios, since this is set by virtue of having rcutorture
	configured.

3.	Drive RCU_USER_QS directly from Kconfig, relying on the fact
	that NO_HZ_FULL selects it.

4.	Convert CONFIG_RCU_FANOUT_EXACT to a boot parameter, where it
	is used by rcutorture.

5.	Update rcutorture test scenarios to use the boot parameter
	created in #4 instead of the Kconfig parameter.

6.	Create a boot parameter to do a diagnostic dump of the shape
	of the rcu_node combining tree, which is useful for verifying
	that intended changes to that tree actually happened.

7.	Create an RCU_EXPERT Kconfig parameter and hide the
	RCU_FAST_NO_HZ, RCU_BOOST, CONTEXT_TRACKING_FORCE, and
	RCU_NOCB_CPU boolean parameters behind it.

8.	Make rcutorture test scenarios force RCU_EXPERT, but have
	SRCU-P, TASKS03, and TREE09 retain !RCU_EXPERT in order to
	test the vanilla configuration.

9.	Remove the dependency of RCU_FANOUT_LEAF on RCU_FANOUT.

10.	Change RCU to allow it to tolerate an undefined RCU_FANOUT,
	and then hide RCU_FANOUT behind RCU_EXPERT.

11.	Change RCU to allow it to tolerate an undefined RCU_FANOUT_LEAF,
	and then hide RCU_FANOUT_LEAF behind RCU_EXPERT.

12.	Change RCU to allow it to tolerate an undefined RCU_KTHREAD_PRIO,
	and then hide RCU_KTHREAD_PRIO behind RCU_EXPERT.

							Thanx, Paul

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

 b/Documentation/kernel-parameters.txt                          |   11 +
 b/init/Kconfig                                                 |   62 ++++------
 b/kernel/rcu/tree.c                                            |   50 ++++++--
 b/kernel/rcu/tree.h                                            |   29 ++++
 b/kernel/rcu/tree_plugin.h                                     |   14 +-
 b/lib/Kconfig.debug                                            |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/SRCU-N        |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TASKS01       |    2 
 b/tools/testing/selftests/rcutorture/configs/rcu/TASKS02       |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TASKS03       |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE01        |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE02        |    2 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE02-T      |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE03        |    2 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE04        |    2 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE05        |    2 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE06        |    2 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE06.boot   |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE07        |    2 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE08        |    2 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE08-T      |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE08-T.boot |    1 
 b/tools/testing/selftests/rcutorture/configs/rcu/TREE08.boot   |    1 
 23 files changed, 127 insertions(+), 65 deletions(-)


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2015-04-22 14:31 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-21 19:55 [PATCH tip/core/rcu 0/12] RCU Kconfig fixes for v4.2 Paul E. McKenney
2015-04-21 19:55 ` [PATCH tip/core/rcu 01/12] rcu: Directly drive TASKS_RCU from Kconfig Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 02/12] rcutorture: TASKS_RCU set directly, so don't explicitly set it Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 03/12] rcu: Directly drive RCU_USER_QS from Kconfig Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 04/12] rcu: Covert CONFIG_RCU_FANOUT_EXACT to boot parameter Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 05/12] rcutorture: Update configuration fragments for rcutree.rcu_fanout_exact Paul E. McKenney
2015-04-22  5:08     ` Pranith Kumar
2015-04-22 14:24       ` Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 06/12] rcu: Enable diagnostic dump of rcu_node combining tree Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 07/12] rcu: Create RCU_EXPERT Kconfig and hide booleans behind it Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 08/12] rcutorture: Make rcutorture scripts force RCU_EXPERT Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 09/12] rcu: Break dependency of RCU_FANOUT_LEAF on RCU_FANOUT Paul E. McKenney
2015-04-22  5:22     ` Pranith Kumar
2015-04-22 14:30       ` Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 10/12] rcu: Make RCU able to tolerate undefined CONFIG_RCU_FANOUT Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 11/12] rcu: Make RCU able to tolerate undefined CONFIG_RCU_FANOUT_LEAF Paul E. McKenney
2015-04-22  5:25     ` Pranith Kumar
2015-04-22 14:30       ` Paul E. McKenney
2015-04-21 19:55   ` [PATCH tip/core/rcu 12/12] rcu: Make RCU able to tolerate undefined CONFIG_RCU_KTHREAD_PRIO Paul E. McKenney
2015-04-22  5:26 ` [PATCH tip/core/rcu 0/12] RCU Kconfig fixes for v4.2 Pranith Kumar

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.