On Wed, Jun 26, 2013 at 03:52:15PM -0400, Steven Rostedt wrote:

 > >  > Hmm, no it needs a fix to make this work. I applied a patch below that
 > >  > should do this correctly (and will put this into my 3.11 queue).
 > >  > 
 > >  > If you run the test again with this change and with the above filter, it
 > >  > should stop the trace before overwriting the first dump, as it should
 > >  > ignore the printk output.
 > > 
 > > I think something isn't right with this patch.
 > > After 10 hours, I hit the bug again, but...
 > > 
 > > (01:21:28:root@binary:tracing)# cat trace
 > > # tracer: preemptirqsoff
 > > #
 > > (01:21:30:root@binary:tracing)# 
 > 
 > Did you apply the patch I added to my last email. It should have prevent
 > that form happening :-/
 
Yeah, that's what I meant by "this patch".
To reduce ambiguity, I mean the one below.. There wasn't another patch
that I missed right ?

        Dave


diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c
index b19d065..2aefbee 100644
--- a/kernel/trace/trace_irqsoff.c
+++ b/kernel/trace/trace_irqsoff.c
@@ -373,7 +373,7 @@ start_critical_timing(unsigned long ip, unsigned long 
parent_ip)
        struct trace_array_cpu *data;
        unsigned long flags;
 
-       if (likely(!tracer_enabled))
+       if (!tracer_enabled || !tracing_is_enabled())
                return;
 
        cpu = raw_smp_processor_id();
@@ -416,7 +416,7 @@ stop_critical_timing(unsigned long ip, unsigned long 
parent_ip)
        else
                return;
 
-       if (!tracer_enabled)
+       if (!tracer_enabled || !tracing_is_enabled())
                return;
 
        data = per_cpu_ptr(tr->trace_buffer.data, cpu);


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to