]> git.baikalelectronics.ru Git - kernel.git/commit
tracing: Still trace filtered irq functions when irq trace is disabled
authorSteven Rostedt <srostedt@redhat.com>
Tue, 14 Jun 2011 23:02:29 +0000 (19:02 -0400)
committerSteven Rostedt <rostedt@goodmis.org>
Fri, 8 Jul 2011 02:26:27 +0000 (22:26 -0400)
commitf2f62e98e68f7a98349eda5967c632902b39765b
treee93b858ab3313374d23c4ebadc5077816f1894f2
parent2c4432bbd8c0fb9cd9fbed549457258b4746252f
tracing: Still trace filtered irq functions when irq trace is disabled

If a function is set to be traced by the set_graph_function, but the
option funcgraph-irqs is zero, and the traced function happens to be
called from a interrupt, it will not be traced.

The point of funcgraph-irqs is to not trace interrupts when we are
preempted by an irq, not to not trace functions we want to trace that
happen to be *in* a irq.

Luckily the current->trace_recursion element is perfect to add a flag
to help us be able to trace functions within an interrupt even when
we are not tracing interrupts that preempt the trace.

Reported-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Tested-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
kernel/trace/trace.h
kernel/trace/trace_functions_graph.c