From: Andrew Morton on
On Mon, 26 Jul 2010 10:49:50 +0200
Michal Simek <monstr(a)monstr.eu> wrote:

> start/stop_critical_timing function for preemptirqsoff, preemptoff
> and irqsoff tracers contains atomic_inc and atomic_dec operations.
>
> Atomic operations used local_irq_save/restore macros to ensure
> atomic access but they are traced by the same function which is causing
> recursion problem.
>
> The reason is when these tracers are turn ON then local_irq_save/restore
> macros are changed in include/linux/irqflags.h to call trace_hardirqs_on/off
> which call start/stop_critical_timing.
>
> Microblaze was affected because use generic atomic implementation.

Seems that this will also affect blackfin, mn10300 and score. I guess
they aren't supporting tracing yet?

> Signed-off-by: Michal Simek <monstr(a)monstr.eu>
> Acked-by: Steven Rostedt <rostedt(a)goodmis.org>
> Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>

hm, I wonder how my signoff got there. Doesn't matter.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/