On Sat, Jan 26, 2013 at 04:23:46PM -0800, Paul E. McKenney wrote:
> From: "Paul E. McKenney" <paul.mcken...@linaro.org>
> 
> Tiny RCU has historically omitted RCU CPU stall warnings in order to
> reduce memory requirements, however, lack of these warnings caused
> Thomas Gleixner some debugging pain recently.  Therefore, this commit
> adds RCU CPU stall warnings to tiny RCU if RCU_TRACE=y.  This keeps
> the memory footprint small, while still enabling CPU stall warnings
> in kernels built to enable them.
> 
> Updated to include Josh Triplett's suggested use of RCU_STALL_COMMON
> config variable to simplify #if expressions.
> 
> Reported-by: Thomas Gleixner <t...@linutronix.de>
> Signed-off-by: Paul E. McKenney <paul.mcken...@linaro.org>
> Signed-off-by: Paul E. McKenney <paul...@linux.vnet.ibm.com>

One suggestion below; with that change,
Reviewed-by: Josh Triplett <j...@joshtriplett.org>

> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -486,6 +486,14 @@ config PREEMPT_RCU
>         This option enables preemptible-RCU code that is common between
>         the TREE_PREEMPT_RCU and TINY_PREEMPT_RCU implementations.
>  
> +config RCU_STALL_COMMON
> +     def_bool ( TREE_RCU || TREE_PREEMPT_RCU || RCU_TRACE )
> +     help
> +       This option enables RCU CPU stall code that is common between
> +       the TINY and TREE variants of RCU.  The purpose is to allow
> +       the tiny variants to disable RCU CPU stall warnings, while
> +       making these warnings mandatory for the tree variants.
> +
[...]
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -970,7 +970,7 @@ config RCU_TORTURE_TEST_RUNNABLE
>  
>  config RCU_CPU_STALL_TIMEOUT
>       int "RCU CPU stall timeout in seconds"
> -     depends on TREE_RCU || TREE_PREEMPT_RCU
> +     depends on TREE_RCU || TREE_PREEMPT_RCU || RCU_TRACE

depends on RCU_STALL_COMMON
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to