All of lore.kernel.org
 help / color / mirror / Atom feed
From: tip-bot for Dongsheng <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, hpa@zytor.com, mingo@kernel.org,
	jolsa@kernel.org, tglx@linutronix.de, yangds.fnst@cn.fujitsu.com
Subject: [tip:perf/core] perf tools: Clarify the output of perf sched map.
Date: Mon, 12 May 2014 09:01:06 -0700	[thread overview]
Message-ID: <tip-6bcab4e1eaa1f669d003051ef3b87a963d8763bb@git.kernel.org> (raw)
In-Reply-To: <1399354741-19522-1-git-send-email-yangds.fnst@cn.fujitsu.com>

Commit-ID:  6bcab4e1eaa1f669d003051ef3b87a963d8763bb
Gitweb:     http://git.kernel.org/tip/6bcab4e1eaa1f669d003051ef3b87a963d8763bb
Author:     Dongsheng <yangds.fnst@cn.fujitsu.com>
AuthorDate: Tue, 6 May 2014 14:39:01 +0900
Committer:  Jiri Olsa <jolsa@kernel.org>
CommitDate: Mon, 12 May 2014 11:09:05 +0200

perf tools: Clarify the output of perf sched map.

In output of perf sched map, any shortname of thread will be explained
at the first time when it appear.

Example:
              *A0       228836.978985 secs A0 => perf:23032
          *.   A0       228836.979016 secs B0 => swapper:0
           .  *C0       228836.979099 secs C0 => migration/3:22
  *A0      .   C0       228836.979115 secs
   A0      .  *.        228836.979115 secs

But B0, which is explained as swapper:0 did not appear in the
left part of output. Instead, we use '.' as the shortname of
swapper:0. So the comment of "B0 => swapper:0" is not easy to
understand.

This patch clarify the output of perf sched map with not allocating
one letter-number shortname for swapper:0 and print ". => swapper:0"
as the explanation for swapper:0.

Example:
              *A0       228836.978985 secs A0 => perf:23032
          * .  A0       228836.979016 secs .  => swapper:0
            . *B0       228836.979099 secs B0 => migration/3:22
  *A0       .  B0       228836.979115 secs
   A0       . * .       228836.979115 secs
   A0     *C0   .       228836.979225 secs C0 => ksoftirqd/2:18
   A0     *D0   .       228836.979236 secs D0 => rcu_sched:7

Signed-off-by: Dongsheng <yangds.fnst@cn.fujitsu.com>
Acked-by: Ingo Molnar <mingo@kernel.org>
Link: http://lkml.kernel.org/r/1399354741-19522-1-git-send-email-yangds.fnst@cn.fujitsu.com
[ small style fixes to make checkpatch happy ]
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
 tools/perf/builtin-sched.c | 35 ++++++++++++++++++++---------------
 1 file changed, 20 insertions(+), 15 deletions(-)

diff --git a/tools/perf/builtin-sched.c b/tools/perf/builtin-sched.c
index 4f0dd21..2579215 100644
--- a/tools/perf/builtin-sched.c
+++ b/tools/perf/builtin-sched.c
@@ -1300,17 +1300,25 @@ static int map_switch_event(struct perf_sched *sched, struct perf_evsel *evsel,
 
 	new_shortname = 0;
 	if (!sched_in->shortname[0]) {
-		sched_in->shortname[0] = sched->next_shortname1;
-		sched_in->shortname[1] = sched->next_shortname2;
-
-		if (sched->next_shortname1 < 'Z') {
-			sched->next_shortname1++;
+		if (!strcmp(thread__comm_str(sched_in), "swapper")) {
+			/*
+			 * Don't allocate a letter-number for swapper:0
+			 * as a shortname. Instead, we use '.' for it.
+			 */
+			sched_in->shortname[0] = '.';
+			sched_in->shortname[1] = ' ';
 		} else {
-			sched->next_shortname1='A';
-			if (sched->next_shortname2 < '9') {
-				sched->next_shortname2++;
+			sched_in->shortname[0] = sched->next_shortname1;
+			sched_in->shortname[1] = sched->next_shortname2;
+
+			if (sched->next_shortname1 < 'Z') {
+				sched->next_shortname1++;
 			} else {
-				sched->next_shortname2='0';
+				sched->next_shortname1 = 'A';
+				if (sched->next_shortname2 < '9')
+					sched->next_shortname2++;
+				else
+					sched->next_shortname2 = '0';
 			}
 		}
 		new_shortname = 1;
@@ -1322,12 +1330,9 @@ static int map_switch_event(struct perf_sched *sched, struct perf_evsel *evsel,
 		else
 			printf("*");
 
-		if (sched->curr_thread[cpu]) {
-			if (sched->curr_thread[cpu]->tid)
-				printf("%2s ", sched->curr_thread[cpu]->shortname);
-			else
-				printf(".  ");
-		} else
+		if (sched->curr_thread[cpu])
+			printf("%2s ", sched->curr_thread[cpu]->shortname);
+		else
 			printf("   ");
 	}
 

  parent reply	other threads:[~2014-05-12 16:01 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-05  7:05 [PATCH 0/3] perf tools: Patchset for perf sched Dongsheng Yang
2014-05-05  7:05 ` [PATCH 1/3] perf tools: add missing event for perf sched record Dongsheng Yang
2014-05-12 16:00   ` [tip:perf/core] perf tools: Add " tip-bot for Dongsheng
2014-05-05  7:05 ` [PATCH 2/3] perf tools: Adapt the TASK_STATE_TO_CHAR_STR to new value in kernel space Dongsheng Yang
2014-05-12 16:00   ` [tip:perf/core] " tip-bot for Dongsheng
2014-05-05  7:05 ` [PATCH 3/3] perf tools: Clarify the output of perf sched map Dongsheng Yang
2014-05-05 18:24   ` Jiri Olsa
2014-05-05 18:27     ` David Ahern
2014-05-05 18:37   ` Ingo Molnar
2014-05-06  0:40     ` [PATCH V2] " Dongsheng Yang
2014-05-06  6:23       ` Ingo Molnar
2014-05-06  5:27         ` Dongsheng Yang
2014-05-06  5:39         ` [PATCH V3] " Dongsheng Yang
2014-05-06  7:23           ` Ingo Molnar
2014-05-06 12:44             ` Jiri Olsa
2014-05-12 16:01           ` tip-bot for Dongsheng [this message]
2014-05-05 18:25 ` [PATCH 0/3] perf tools: Patchset for perf sched Jiri Olsa

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=tip-6bcab4e1eaa1f669d003051ef3b87a963d8763bb@git.kernel.org \
    --to=tipbot@zytor.com \
    --cc=hpa@zytor.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=yangds.fnst@cn.fujitsu.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.