Commit 7fded33c authored by Jing Zhang's avatar Jing Zhang Committed by Namhyung Kim
Browse files

perf test: Add pmu-event test for "Compat" and new event_field.



Add new event test for uncore system event which is used to verify the
functionality of "Compat" matching multiple identifiers and the new event
fields "EventidCode" and "NodeType".

Signed-off-by: default avatarJing Zhang <renyu.zj@linux.alibaba.com>
Reviewed-by: default avatarIan Rogers <irogers@google.com>
Tested-by: default avatarIan Rogers <irogers@google.com>
Cc: James Clark <james.clark@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Leo Yan <leo.yan@linaro.org>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Shuai Xue <xueshuai@linux.alibaba.com>
Cc: Zhuo Song <zhuo.song@linux.alibaba.com>
Cc: John Garry <john.g.garry@oracle.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-doc@vger.kernel.org
Link: https://lore.kernel.org/r/1695794391-34817-6-git-send-email-renyu.zj@linux.alibaba.com


Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
parent 3bb59e75
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -12,5 +12,13 @@
           "EventName": "sys_ccn_pmu.read_cycles",
           "Unit": "sys_ccn_pmu",
           "Compat": "0x01"
   },
   {
           "BriefDescription": "Counts total cache misses in first lookup result (high priority)",
           "EventidCode": "0x1",
           "NodeType": "0x5",
           "EventName": "sys_cmn_pmu.hnf_cache_miss",
           "Unit": "sys_cmn_pmu",
           "Compat": "(434|436|43c|43a).*"
   }
]
+8 −0
Original line number Diff line number Diff line
@@ -244,6 +244,14 @@ static const struct pmu_event pmu_events__test_soc_sys[] = {
		.topic = "uncore",
		.pmu = "uncore_sys_ccn_pmu",
	},
	{
		.name = "sys_cmn_pmu.hnf_cache_miss",
		.event = "eventid=0x1,type=0x5",
		.desc = "Counts total cache misses in first lookup result (high priority). Unit: uncore_sys_cmn_pmu ",
		.compat = "(434|436|43c|43a).*",
		.topic = "uncore",
		.pmu = "uncore_sys_cmn_pmu",
	},
	{
		.name = 0,
		.event = 0,
+55 −0
Original line number Diff line number Diff line
@@ -262,9 +262,24 @@ static const struct perf_pmu_test_event sys_ccn_pmu_read_cycles = {
	.matching_pmu = "uncore_sys_ccn_pmu4",
};

static const struct perf_pmu_test_event sys_cmn_pmu_hnf_cache_miss = {
	.event = {
		.name = "sys_cmn_pmu.hnf_cache_miss",
		.event = "eventid=0x1,type=0x5",
		.desc = "Counts total cache misses in first lookup result (high priority)",
		.topic = "uncore",
		.pmu = "uncore_sys_cmn_pmu",
		.compat = "(434|436|43c|43a).*",
	},
	.alias_str = "eventid=0x1,type=0x5",
	.alias_long_desc = "Counts total cache misses in first lookup result (high priority)",
	.matching_pmu = "uncore_sys_cmn_pmu0",
};

static const struct perf_pmu_test_event *sys_events[] = {
	&sys_ddr_pmu_write_cycles,
	&sys_ccn_pmu_read_cycles,
	&sys_cmn_pmu_hnf_cache_miss,
	NULL
};

@@ -707,6 +722,46 @@ static struct perf_pmu_test_pmu test_pmus[] = {
			&sys_ccn_pmu_read_cycles,
		},
	},
	{
		.pmu = {
			.name = (char *)"uncore_sys_cmn_pmu0",
			.is_uncore = 1,
			.id = (char *)"43401",
		},
		.aliases = {
			&sys_cmn_pmu_hnf_cache_miss,
		},
	},
	{
		.pmu = {
			.name = (char *)"uncore_sys_cmn_pmu0",
			.is_uncore = 1,
			.id = (char *)"43602",
		},
		.aliases = {
			&sys_cmn_pmu_hnf_cache_miss,
		},
	},
	{
		.pmu = {
			.name = (char *)"uncore_sys_cmn_pmu0",
			.is_uncore = 1,
			.id = (char *)"43c03",
		},
		.aliases = {
			&sys_cmn_pmu_hnf_cache_miss,
		},
	},
	{
		.pmu = {
			.name = (char *)"uncore_sys_cmn_pmu0",
			.is_uncore = 1,
			.id = (char *)"43a01",
		},
		.aliases = {
			&sys_cmn_pmu_hnf_cache_miss,
		},
	}
};

/* Test that aliases generated are as expected */