Re: [PATCH 2/4] tracing: add event trace infrastructure

From: Pekka Enberg
Date: Wed Feb 25 2009 - 04:33:20 EST


Hi Andrew,

On Wed, 2009-02-25 at 01:22 -0800, Andrew Morton wrote:
> irqsoff latency trace v1.1.5 on 2.6.26-rc8
> --------------------------------------------------------------------
> latency: 97 us, #3/3, CPU#0 | (M:preempt VP:0, KP:0, SP:0 HP:0 #P:2)
> -----------------
> | task: swapper-0 (uid:0 nice:0 policy:0 rt_prio:0)
> -----------------
> => started at: apic_timer_interrupt
> => ended at: do_softirq

<the header seems broken here, should have # at the beginning of the line>

>
> # _------=> CPU#
> # / _-----=> irqs-off
> # | / _----=> need-resched
> # || / _---=> hardirq/softirq
> # ||| / _--=> preempt-depth
> # |||| /
> # ||||| delay
> # cmd pid ||||| time | caller
> # \ / ||||| \ | /
> <idle>-0 0d..1 0us+: trace_hardirqs_off_thunk (apic_timer_interrupt)
> <idle>-0 0d.s. 97us : __do_softirq (do_softirq)
> <idle>-0 0d.s1 98us : trace_hardirqs_on (do_softirq)
>
> your time starts now.

Well, what do you want to know? The first thing to do here is to:

$ grep -v "#" trace
<idle>-0 0d..1 0us+: trace_hardirqs_off_thunk (apic_timer_interrupt)
<idle>-0 0d.s. 97us : __do_softirq (do_softirq)
<idle>-0 0d.s1 98us : trace_hardirqs_on (do_softirq)

after which you have access to the raw data. This particular trace seems
to be somewhat hard to parse (because not all fields are whitespace
delimited) but I can assure you that any format I rely on is not.

So if you're arguing against specific ftrace plugins, go ahead (you
probably have a fair point there). But please don't dismiss the while
_concept_ of ftrace because of them.

Pekka

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