Re: BUG: spinlock trylock failure on UP, i.MX28 3.12.15-rt25

From: Sebastian Andrzej Siewior
Date: Wed Apr 23 2014 - 03:14:51 EST


On 04/22/2014 08:16 PM, Steven Rostedt wrote:
> --- a/kernel/timer.c
> +++ b/kernel/timer.c
> @@ -1447,6 +1447,12 @@ static void run_timer_softirq(struct softirq_action *h)
> __run_timers(base);
> }
>
> +#ifdef CONFIG_SMP
> +#define timer_should_raise_softirq(lock) !spin_do_trylock(lock)
> +#else
> +#define timer_should_raise_softirq(lock) 1
> +#endif
> +

No. The lock may be taken but it also may be available no matter if UP
or not. With this patch applied the lockdep splat will go away but the
FULL_NO_HZ people will come back because the timer softirq is scheduled
even if no timer has expired.

Sebastian
--
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/