From: John Garry <john.garry@huawei.com>
To: Will Deacon <will@kernel.org>
Cc: <peterz@infradead.org>, <mingo@redhat.com>, <acme@kernel.org>,
<mark.rutland@arm.com>, <alexander.shishkin@linux.intel.com>,
<jolsa@redhat.com>, <namhyung@kernel.org>, <ak@linux.intel.com>,
<linuxarm@huawei.com>, <linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>, <suzuki.poulose@arm.com>,
<james.clark@arm.com>, <zhangshaokun@hisilicon.com>,
<robin.murphy@arm.com>
Subject: Re: [PATCH RFC 0/7] perf pmu-events: Support event aliasing for system PMUs
Date: Tue, 18 Feb 2020 13:24:38 +0000 [thread overview]
Message-ID: <a40903fe-d52f-96c6-a06a-fe834d71d625@huawei.com> (raw)
In-Reply-To: <20200218125707.GB20212@willie-the-truck>
On 18/02/2020 12:57, Will Deacon wrote:
> On Fri, Jan 24, 2020 at 10:34:58PM +0800, John Garry wrote:
>> Currently event aliasing for only CPU and uncore PMUs is supported. In
>> fact, only uncore PMUs aliasing for when the uncore PMUs are fixed for a
>> CPU is supported, which may not always be the case for certain
>> architectures.
>>
>> This series adds support for PMU event aliasing for system and other
>> uncore PMUs which are not fixed to a specific CPU.
>>
>> For this, we introduce support for another per-arch mapfile, which maps a
>> particular system identifier to a set of system PMU events for that
>> system. This is much the same as what we do for CPU event aliasing.
>>
>> To support this, we need to change how we match a PMU to a mapfile,
>> whether it should use a CPU or system mapfile. For this we do the
>> following:
>>
>> - For CPU PMU, we always match for the event mapfile based on the CPUID.
>> This has not changed.
>>
>> - For an uncore or system PMU, we match first based on the SYSID (if set).
>> If this fails, then we match on the CPUID.
>>
>> This works for x86, as x86 would not have any system mapfiles for uncore
>> PMUs (and match on the CPUID).
>>
>> Initial reference support is also added for ARM SMMUv3 PMCG (Performance
>> Monitor Event Group) PMU for HiSilicon hip08 platform with only a single
>> event so far - see driver in drivers/perf/arm_smmuv3_pmu.c for that driver.
>
> Why don't we just expose SMMU_IIDR in the SMMUv3 PMU directory, so that
> you can key off that?
That does not sound like a standard sysfs interface.
Anyway, I don't think that works for every case, quoting from
https://lkml.org/lkml/2019/10/16/465:
"> Note: I do acknowledge that an overall issue is that we assume all
PMCG IMP DEF events are same for a given SMMU model.
That assumption does technically fail already - I know MMU-600 has
different IMP-DEF events for its TCU and TBUs, however as long as we can
get as far as "this is some part of an MMU-600" the driver should be
able to figure out the rest ..."
So even if it is solvable here, the kernel driver(s) will need to be
reworked. And that is just solving one case in many.
I'm nervous about coming up with a global "SYSID"
> when we don't have the ability to standardise anything in that space.
I understand totally, especially if any sysid is based on DT bindings.
But this is some sort of standardization:
https://developer.arm.com/docs/den0028/c, see SMCCC_ARCH_SOC_ID
John
next prev parent reply other threads:[~2020-02-18 13:24 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-24 14:34 John Garry
2020-01-24 14:34 ` [PATCH RFC 1/7] perf jevents: Add support for an extra directory level John Garry
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 15:47 ` John Garry
2020-01-24 14:35 ` [PATCH RFC 2/7] perf vendor events arm64: Relocate hip08 core events John Garry
2020-01-24 14:35 ` [PATCH RFC 3/7] perf jevents: Add support for a system events PMU John Garry
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 15:55 ` John Garry
2020-02-11 14:46 ` Jiri Olsa
2020-01-24 14:35 ` [PATCH RFC 4/7] perf pmu: Rename uncore symbols to include system PMUs John Garry
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 15:44 ` John Garry
2020-02-11 14:43 ` Jiri Olsa
2020-02-11 15:36 ` John Garry
2020-02-12 12:08 ` Jiri Olsa
2020-01-24 14:35 ` [PATCH RFC 5/7] perf pmu: Support matching by sysid John Garry
2020-02-10 12:07 ` Jiri Olsa
2020-02-10 16:22 ` John Garry
2020-02-11 13:47 ` Jiri Olsa
2020-02-11 15:07 ` John Garry
2020-02-12 10:08 ` John Garry
2020-02-12 12:16 ` Jiri Olsa
2020-02-12 12:24 ` John Garry
2020-01-24 14:35 ` [PATCH RFC 6/7] perf vendor events arm64: Relocate uncore events for hip08 John Garry
2020-01-24 14:35 ` [PATCH RFC 7/7] perf vendor events arm64: Add hip08 SMMUv3 PMCG IMP DEF events John Garry
2020-02-11 15:24 ` [PATCH RFC 0/7] perf pmu-events: Support event aliasing for system PMUs James Clark
2020-02-11 15:41 ` John Garry
2020-02-18 12:57 ` Will Deacon
2020-02-18 13:24 ` John Garry [this message]
2020-02-18 13:39 ` Will Deacon
2020-02-18 16:19 ` John Garry
2020-02-18 17:08 ` Mark Rutland
2020-02-18 17:58 ` John Garry
2020-02-18 18:13 ` Mark Rutland
2020-02-19 1:55 ` Joakim Zhang
2020-02-19 8:44 ` John Garry
2020-02-19 12:40 ` Joakim Zhang
2020-02-19 14:28 ` John Garry
2020-02-19 8:50 ` John Garry
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=a40903fe-d52f-96c6-a06a-fe834d71d625@huawei.com \
--to=john.garry@huawei.com \
--cc=acme@kernel.org \
--cc=ak@linux.intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=james.clark@arm.com \
--cc=jolsa@redhat.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=mark.rutland@arm.com \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=peterz@infradead.org \
--cc=robin.murphy@arm.com \
--cc=suzuki.poulose@arm.com \
--cc=will@kernel.org \
--cc=zhangshaokun@hisilicon.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®