Re: [PATCH 3/4] sched: Make sleeping inside spinlock detectionworking in !CONFIG_PREEMPT

From: Paul E. McKenney
Date: Wed Jun 08 2011 - 15:40:49 EST


On Wed, Jun 08, 2011 at 07:48:34PM +0200, Frederic Weisbecker wrote:
> Select CONFIG_PREEMPT_COUNT when we enable the sleeping inside
> spinlock detection, so that the preempt offset gets correctly
> incremented/decremented from preempt_disable()/preempt_enable().
>
> This makes the preempt count eventually working in !CONFIG_PREEMPT
> when that debug option is set and thus fixes the detection of explicit
> preemption disabled sections under such config. Code that sleeps
> in explicitly preempt disabled section can be finally spotted
> in non-preemptible kernels.
>
> Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
> Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>

Acked-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>

> Cc: Ingo Molnar <mingo@xxxxxxx>
> Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
> ---
> lib/Kconfig.debug | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index 28afa4c..a7dd7b5 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -650,6 +650,7 @@ config TRACE_IRQFLAGS
>
> config DEBUG_SPINLOCK_SLEEP
> bool "Spinlock debugging: sleep-inside-spinlock checking"
> + select PREEMPT_COUNT
> depends on DEBUG_KERNEL
> help
> If you say Y here, various routines which may sleep will become very
> --
> 1.7.5.4
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/