mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jiri Olsa <jolsa@redhat.com>
To: Frederic Weisbecker <fweisbec@gmail.com>
Cc: mingo@elte.hu, rostedt@goodmis.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCHv6 3/4] tracing: graph output support for irqsoff tracer
Date: Wed, 14 Apr 2010 09:50:52 +0200	[thread overview]
Message-ID: <20100414075052.GA2021@jolsa.lab.eng.brq.redhat.com> (raw)
In-Reply-To: <20100412233332.GH8285@nowhere>

On Tue, Apr 13, 2010 at 01:33:37AM +0200, Frederic Weisbecker wrote:
> On Fri, Apr 02, 2010 at 07:01:22PM +0200, Jiri Olsa wrote:
> > +#define GRAPH_TRACER_FLAGS (TRACE_GRAPH_PRINT_CPU | \
> > +			    TRACE_GRAPH_PRINT_PROC)
> > +
> > +static enum print_line_t irqsoff_print_line(struct trace_iterator *iter)
> > +{
> > +	u32 flags = GRAPH_TRACER_FLAGS;
> > +
> > +	if (trace_flags & TRACE_ITER_LATENCY_FMT)
> > +		flags |= TRACE_GRAPH_PRINT_DURATION;
> > +	else
> > +		flags |= TRACE_GRAPH_PRINT_ABS_TIME;
> 
> 
> 
> Why not having ABS_TIME in any case?
> 
> And more important, you probably want to add TRACE_ITER_LATENCY_FMT
> as well to get the contexts (need-resched, hardirq/softirq, preempt-depth,
> lock-depth)

hi,

latency info
	The latency info is governed by global 'trace_flags', the graph tracers
	follows that as well.


absolute time
	The idea was to follow the current irqsoff function trace format. Though
	it cannot be exatly the same, it can print the same info.

	By default I added TRACE_GRAPH_PRINT_CPU and TRACE_GRAPH_PRINT_PROC,
	since they are always there for current irqsoff trace.

	Then the absolute time is printed only in the case when the
	latency info is switched off.

	AFAICS the 'time' field in the output (for latency enabled) actually
	represents the duration	(computed/printed in trace_print_lat_context function).
	Hence I added TRACE_GRAPH_PRINT_DURATION to graph output for the latency case.

	So the answer to your question is, the absolute time is not part
	of the output, since it's not part of the original trace output.
	My opinion is the absolute time is not be that important
	for this tracer, the duration is.


	latency output OFF:

		current tracer:
		TASK-PID    CPU#    TIMESTAMP FUNCTION


		graph tracer:
		TIME        CPU  TASK/PID                      FUNCTION CALLS


	latency output ON:

		current tracer:
				_------=> CPU#
			       / _-----=> irqs-off
			      | / _----=> need-resched
			      || / _---=> hardirq/softirq
			      ||| / _--=> preempt-depth
			      |||| /_--=> lock-depth
			      |||||/       delay
		cmd     pid   |||||| time    |   caller
		   \\   /      ||||||   \\   |   /



		graph tracer:
				      _-----=> irqs-off        
				     / _----=> need-resched    
				    | / _---=> hardirq/softirq 
				    || / _--=> preempt-depth   
				    ||| / _-=> lock-depth      
				    |||| /                     
		CPU  TASK/PID       |||||  DURATION                  FUNCTION CALLS


	Also the non-latency case covers the 'verbose' option output.




thanks for your comments,
hopefully I haven't missed anything.. ;)

jirka

  reply	other threads:[~2010-04-14  7:51 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-02 17:01 [PATCHv6 0/4] tracing: function graph output for preempt/irqs-off tracers Jiri Olsa
2010-04-02 17:01 ` [PATCHv6 1/4] tracing: adding ftrace events for graph tracer Jiri Olsa
2010-04-30  8:45   ` [tip:tracing/core] tracing: Add " tip-bot for Jiri Olsa
2010-04-02 17:01 ` [PATCHv6 2/4] tracing: graph tracer - adding support for passing flags to ouput functions Jiri Olsa
2010-04-30  8:45   ` [tip:tracing/core] tracing: Have graph flags passed in " tip-bot for Jiri Olsa
2010-04-02 17:01 ` [PATCHv6 3/4] tracing: graph output support for irqsoff tracer Jiri Olsa
2010-04-12 23:33   ` Frederic Weisbecker
2010-04-14  7:50     ` Jiri Olsa [this message]
2010-04-15 19:50       ` Frederic Weisbecker
2010-04-30  8:46   ` [tip:tracing/core] tracing: Add " tip-bot for Jiri Olsa
2010-04-02 17:01 ` [PATCHv6 4/4] tracing: graph output support for preemptirqsoff/preemptoff tracers Jiri Olsa
2010-04-27  1:35   ` Steven Rostedt
2010-04-27  6:54     ` Jiri Olsa
2010-04-12  7:39 ` [PATCHv6 0/4] tracing: function graph output for preempt/irqs-off tracers Jiri Olsa
2010-04-26 20:22 ` Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100414075052.GA2021@jolsa.lab.eng.brq.redhat.com \
    --to=jolsa@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=rostedt@goodmis.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®