lkml.org 
[lkml]   [2009]   [Apr]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 2/5] tracing/irq: convert irq traces to use TRACE_EVENT macro
    From: Steven Rostedt <srostedt@redhat.com>

    The TRACE_FORMAT will soon be deprecated. This patch converts it to
    the TRACE_EVENT macro.

    Note, this change should also speed up the tracing.

    [ Impact: remove a user of deprecated TRACE_FORMAT ]

    Cc: Jason Baron <jbaron@redhat.com>
    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    ---
    include/trace/events/irq.h | 57 +++++++++++++++++++++++++++++++++++++-------
    1 files changed, 48 insertions(+), 9 deletions(-)

    diff --git a/include/trace/events/irq.h b/include/trace/events/irq.h
    index 75e3468..7686864 100644
    --- a/include/trace/events/irq.h
    +++ b/include/trace/events/irq.h
    @@ -10,11 +10,24 @@
    /*
    * Tracepoint for entry of interrupt handler:
    */
    -TRACE_FORMAT(irq_handler_entry,
    +TRACE_EVENT(irq_handler_entry,
    +
    TP_PROTO(int irq, struct irqaction *action),
    +
    TP_ARGS(irq, action),
    - TP_FMT("irq=%d handler=%s", irq, action->name)
    - );
    +
    + TP_STRUCT__entry(
    + __field( int, irq )
    + __string( name, action->name )
    + ),
    +
    + TP_fast_assign(
    + __entry->irq = irq;
    + __assign_str(name, action->name);
    + ),
    +
    + TP_printk("irq=%d handler=%s", __entry->irq, __get_str(name))
    +);

    /*
    * Tracepoint for return of an interrupt handler:
    @@ -39,17 +52,43 @@ TRACE_EVENT(irq_handler_exit,
    __entry->irq, __entry->ret ? "handled" : "unhandled")
    );

    -TRACE_FORMAT(softirq_entry,
    +TRACE_EVENT(softirq_entry,
    +
    TP_PROTO(struct softirq_action *h, struct softirq_action *vec),
    +
    TP_ARGS(h, vec),
    - TP_FMT("softirq=%d action=%s", (int)(h - vec), softirq_to_name[h-vec])
    - );

    -TRACE_FORMAT(softirq_exit,
    + TP_STRUCT__entry(
    + __field( int, vec )
    + __string( name, softirq_to_name[h-vec] )
    + ),
    +
    + TP_fast_assign(
    + __entry->vec = (int)(h - vec);
    + __assign_str(name, softirq_to_name[h-vec]);
    + ),
    +
    + TP_printk("softirq=%d action=%s", __entry->vec, __get_str(name))
    +);
    +
    +TRACE_EVENT(softirq_exit,
    +
    TP_PROTO(struct softirq_action *h, struct softirq_action *vec),
    +
    TP_ARGS(h, vec),
    - TP_FMT("softirq=%d action=%s", (int)(h - vec), softirq_to_name[h-vec])
    - );
    +
    + TP_STRUCT__entry(
    + __field( int, vec )
    + __string( name, softirq_to_name[h-vec] )
    + ),
    +
    + TP_fast_assign(
    + __entry->vec = (int)(h - vec);
    + __assign_str(name, softirq_to_name[h-vec]);
    + ),
    +
    + TP_printk("softirq=%d action=%s", __entry->vec, __get_str(name))
    +);

    #endif /* _TRACE_IRQ_H */

    --
    1.6.2.1
    --


    \
     
     \ /
      Last update: 2009-04-25 06:31    [W:0.022 / U:3.220 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site