All of lore.kernel.org
 help / color / mirror / Atom feed
From: Leo Yan <leo.yan@linaro.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>,
	Alyssa Ross <hi@alyssa.is>, Ian Rogers <irogers@google.com>,
	Like Xu <likexu@tencent.com>, Kajol Jain <kjain@linux.ibm.com>,
	Li Huafei <lihuafei1@huawei.com>, Joe Mario <jmario@redhat.com>,
	Adam Li <adam.li@amperecomputing.com>,
	German Gomez <german.gomez@arm.com>,
	James Clark <james.clark@arm.com>,
	Ali Saidi <alisaidi@amazon.com>,
	linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v4 08/12] perf c2c: Refactor node header
Date: Mon, 30 May 2022 19:40:32 +0800	[thread overview]
Message-ID: <20220530114036.3225544-9-leo.yan@linaro.org> (raw)
In-Reply-To: <20220530114036.3225544-1-leo.yan@linaro.org>

The node header array contains 3 items, each item is used for one of
the 3 flavors for node accessing info.  To extend sorting on other
snooping type and not always stick to HITMs, the second header string
"Node{cpus %hitms %stores}" should be adjusted (e.g. it's changed as
"Node{cpus %peer %stores}").

For this reason, this patch changes the node header array to three
flat variables and uses switch-case in function setup_nodes_header(),
thus it is easier for altering the header string.

Signed-off-by: Leo Yan <leo.yan@linaro.org>
Tested-by: Ali Saidi <alisaidi@amazon.com>
---
 tools/perf/builtin-c2c.c | 26 +++++++++++++++++++-------
 1 file changed, 19 insertions(+), 7 deletions(-)

diff --git a/tools/perf/builtin-c2c.c b/tools/perf/builtin-c2c.c
index d3608d24bea4..e76219034588 100644
--- a/tools/perf/builtin-c2c.c
+++ b/tools/perf/builtin-c2c.c
@@ -1723,12 +1723,6 @@ static struct c2c_dimension dim_dso = {
 	.se		= &sort_dso,
 };
 
-static struct c2c_header header_node[3] = {
-	HEADER_LOW("Node"),
-	HEADER_LOW("Node{cpus %hitms %stores}"),
-	HEADER_LOW("Node{cpu list}"),
-};
-
 static struct c2c_dimension dim_node = {
 	.name		= "node",
 	.cmp		= empty_cmp,
@@ -2229,9 +2223,27 @@ static int resort_cl_cb(struct hist_entry *he, void *arg __maybe_unused)
 	return 0;
 }
 
+static struct c2c_header header_node_0 = HEADER_LOW("Node");
+static struct c2c_header header_node_1 = HEADER_LOW("Node{cpus %hitms %stores}");
+static struct c2c_header header_node_2 = HEADER_LOW("Node{cpu list}");
+
 static void setup_nodes_header(void)
 {
-	dim_node.header = header_node[c2c.node_info];
+	switch (c2c.node_info) {
+	case 0:
+		dim_node.header = header_node_0;
+		break;
+	case 1:
+		dim_node.header = header_node_1;
+		break;
+	case 2:
+		dim_node.header = header_node_2;
+		break;
+	default:
+		break;
+	}
+
+	return;
 }
 
 static int setup_nodes(struct perf_session *session)
-- 
2.25.1


  parent reply	other threads:[~2022-05-30 11:42 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-30 11:40 [PATCH v4 00/12] perf c2c: Support display for Arm64 Leo Yan
2022-05-30 11:40 ` [PATCH v4 01/12] perf mem: Add statistics for peer snooping Leo Yan
2022-05-30 11:40 ` [PATCH v4 02/12] perf c2c: Output " Leo Yan
2022-05-30 11:40 ` [PATCH v4 03/12] perf c2c: Add dimensions for peer load operations Leo Yan
2022-05-30 11:40 ` [PATCH v4 04/12] perf c2c: Add dimensions of peer metrics for cache line view Leo Yan
2022-05-30 11:40 ` [PATCH v4 05/12] perf c2c: Add mean dimensions for peer operations Leo Yan
2022-05-30 11:40 ` [PATCH v4 06/12] perf c2c: Use explicit names for display macros Leo Yan
2022-05-30 11:40 ` [PATCH v4 07/12] perf c2c: Rename dimension from 'percent_hitm' to 'percent_costly_snoop' Leo Yan
2022-05-30 11:40 ` Leo Yan [this message]
2022-05-30 11:40 ` [PATCH v4 09/12] perf c2c: Refactor display string Leo Yan
2022-05-30 11:40 ` [PATCH v4 10/12] perf c2c: Sort on peer snooping for load operations Leo Yan
2022-05-30 11:40 ` [PATCH v4 11/12] perf c2c: Use 'peer' as default display for Arm64 Leo Yan
2022-05-30 11:40 ` [PATCH v4 12/12] perf c2c: Update documentation for new display option 'peer' Leo Yan
2022-05-31 18:44 ` [PATCH v4 00/12] perf c2c: Support display for Arm64 Joe Mario
2022-06-01 10:25   ` Leo Yan
2022-06-02 16:59     ` Ian Rogers
2022-06-03  3:36       ` Leo Yan
2022-06-02 17:11     ` Ali Saidi
2022-06-03  3:46       ` Leo Yan
2022-06-03 19:33 ` Arnaldo Carvalho de Melo
2022-06-04  1:40   ` Leo Yan

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=20220530114036.3225544-9-leo.yan@linaro.org \
    --to=leo.yan@linaro.org \
    --cc=acme@kernel.org \
    --cc=adam.li@amperecomputing.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=alisaidi@amazon.com \
    --cc=german.gomez@arm.com \
    --cc=hi@alyssa.is \
    --cc=irogers@google.com \
    --cc=james.clark@arm.com \
    --cc=jmario@redhat.com \
    --cc=jolsa@kernel.org \
    --cc=kjain@linux.ibm.com \
    --cc=lihuafei1@huawei.com \
    --cc=likexu@tencent.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.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 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.