]> Pileus Git - ~andy/linux/blobdiff - kernel/trace/trace_irqsoff.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp
[~andy/linux] / kernel / trace / trace_irqsoff.c
index 11186212068cb99c03dcaeb92c6824740d98e51f..20dad0d7a1633c551eec45e7f708dca4ac48b38c 100644 (file)
@@ -505,13 +505,13 @@ EXPORT_SYMBOL(trace_hardirqs_off_caller);
 #ifdef CONFIG_PREEMPT_TRACER
 void trace_preempt_on(unsigned long a0, unsigned long a1)
 {
-       if (preempt_trace())
+       if (preempt_trace() && !irq_trace())
                stop_critical_timing(a0, a1);
 }
 
 void trace_preempt_off(unsigned long a0, unsigned long a1)
 {
-       if (preempt_trace())
+       if (preempt_trace() && !irq_trace())
                start_critical_timing(a0, a1);
 }
 #endif /* CONFIG_PREEMPT_TRACER */