85 lines
3.2 KiB
Diff
85 lines
3.2 KiB
Diff
From e0558b25b65b152b33604886040f6dab143e4258 Mon Sep 17 00:00:00 2001
|
|
From: Kajol Jain <kjain@linux.ibm.com>
|
|
Date: Thu, 19 Nov 2020 20:54:11 +0530
|
|
Subject: [PATCH 196/201] perf test: Fix metric parsing test
|
|
|
|
mainline inclusion
|
|
from mainline-v5.11-rc1
|
|
commit b2ce5dbc15819ea4bef47dbd368239cb1e965158
|
|
category: bugfix
|
|
bugzilla: https://gitee.com/openeuler/kernel/issues/I8C0CX
|
|
|
|
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b2ce5dbc15819ea4bef47dbd368239cb1e965158
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
Commit e1c92a7fbbc5 ("perf tests: Add another metric parsing test") add
|
|
another test for metric parsing. The test goes through all metrics
|
|
compiled for arch within pmu events and try to parse them.
|
|
|
|
Right now this test is failing in powerpc machine.
|
|
|
|
Result in power9 platform:
|
|
|
|
[command]# ./perf test 10
|
|
10: PMU events :
|
|
10.1: PMU event table sanity : Ok
|
|
10.2: PMU event map aliases : Ok
|
|
10.3: Parsing of PMU event table metrics : Skip (some metrics failed)
|
|
10.4: Parsing of PMU event table metrics with fake PMUs : FAILED!
|
|
|
|
Issue is we are passing different runtime parameter value in
|
|
"expr__find_other" and "expr__parse" function which is called from
|
|
function `metric_parse_fake`. And because of this parsing of hv-24x7
|
|
metrics is failing.
|
|
|
|
[command]# ./perf test 10 -vv
|
|
.....
|
|
hv_24x7/pm_mcs01_128b_rd_disp_port01,chip=1/ not found
|
|
expr__parse failed
|
|
test child finished with -1
|
|
---- end ----
|
|
PMU events subtest 4: FAILED!
|
|
|
|
This patch fix this issue and change runtime parameter value to '0' in
|
|
expr__parse function.
|
|
|
|
Result in power9 platform after this patch:
|
|
|
|
[command]# ./perf test 10
|
|
10: PMU events :
|
|
10.1: PMU event table sanity : Ok
|
|
10.2: PMU event map aliases : Ok
|
|
10.3: Parsing of PMU event table metrics : Skip (some metrics failed)
|
|
10.4: Parsing of PMU event table metrics with fake PMUs : Ok
|
|
|
|
Fixes: e1c92a7fbbc5 ("perf tests: Add another metric parsing test")
|
|
Signed-off-by: Kajol Jain <kjain@linux.ibm.com>
|
|
Acked-by: Ian Rogers <irogers@google.com>
|
|
Acked-by: Jiri Olsa <jolsa@redhat.com>
|
|
Cc: Madhavan Srinivasan <maddy@linux.ibm.com>
|
|
Cc: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
|
|
Link: http://lore.kernel.org/lkml/20201119152411.46041-1-kjain@linux.ibm.com
|
|
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
|
|
Signed-off-by: hongrongxuan <hongrongxuan@huawei.com>
|
|
---
|
|
tools/perf/tests/pmu-events.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/tools/perf/tests/pmu-events.c b/tools/perf/tests/pmu-events.c
|
|
index eac481cd8fbb..46d9288bd020 100644
|
|
--- a/tools/perf/tests/pmu-events.c
|
|
+++ b/tools/perf/tests/pmu-events.c
|
|
@@ -999,7 +999,7 @@ static int metric_parse_fake(const char *str)
|
|
}
|
|
}
|
|
|
|
- if (expr__parse(&result, &ctx, str, 1))
|
|
+ if (expr__parse(&result, &ctx, str, 0))
|
|
pr_err("expr__parse failed\n");
|
|
else
|
|
ret = 0;
|
|
--
|
|
2.27.0
|
|
|