lkml.org 
[lkml]   [2011]   [Oct]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 18/20] tracing: Fix preemptirqsoff tracer to not stop at preempt off
    From: Steven Rostedt <srostedt@redhat.com>

    If irqs are disabled when preemption count reaches zero, the
    preemptirqsoff tracer should not flag that as the end.

    When interrupts are enabled and preemption count is not zero
    the preemptirqsoff correctly continues its tracing.

    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    ---
    kernel/trace/trace_irqsoff.c | 4 ++--
    1 files changed, 2 insertions(+), 2 deletions(-)

    diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c
    index 667aa8c..a1a3359 100644
    --- a/kernel/trace/trace_irqsoff.c
    +++ b/kernel/trace/trace_irqsoff.c
    @@ -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 */
    --
    1.7.6.3

    [unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2011-10-10 15:45    [W:0.029 / U:0.624 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site