[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <44e25825-5f23-c641-9f1c-72268d895f75@huawei.com>
Date: Mon, 19 Jul 2021 15:13:06 +0100
From: John Garry <john.garry@...wei.com>
To: Arnaldo Carvalho de Melo <acme@...nel.org>,
Jiri Olsa <jolsa@...nel.org>,
Kan Liang <kan.liang@...ux.intel.com>,
Jin Yao <yao.jin@...ux.intel.com>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-perf-users@...r.kernel.org" <linux-perf-users@...r.kernel.org>,
Zhangshaokun <zhangshaokun@...ilicon.com>,
"liuqi (BA)" <liuqi115@...wei.com>
Subject: [bug report] Patch "perf tools: Fix pattern matching for same
substring in different pmu type" broken
Hi guys,
The named patch has broken PMU alias matching on my arm64 system.
Specifically it is broken for when multiple tokens are used in the
alias. For example, alias "hisi_sccl,l3c" would previously match for PMU
"hisi_sccl3_l3c7", but that no longer works.
In my example, in looking at the code, the callchain
pmu_uncore_alias_match("hisi_sccl,l3c", "hisi_sccl3_l3c7") ->
per_pmu__valid_suffix("hisi_sccl3_l3c7", "hisi_sccl") fails in the
following check:
static bool perf_pmu__valid_suffix(char *pmu_name, char *tok)
{
char *p;
...
p = pmu_name + strlen(tok);
...
if (*p != '_') //here
return false;
}
This check assumes the first token must be followed by a '_', but it is
possibly a numeric.
Please let me know how this should work. Previously it would match on
the tokens, ignoring numerics and '_'.
As an aside, I'll look at why our testcases don't cover this scenario
and look to add a test if necessary.
Thanks,
john
Ps, please cc linux-perf-users@...r.kernel.org as in the MAINTAINERS
file in future, as not all subscribe to the open kernel list (and so
cannot easily reply directly).
Powered by blists - more mailing lists