[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250617141649.GA19021@willie-the-truck>
Date: Tue, 17 Jun 2025 15:16:50 +0100
From: Will Deacon <will@...nel.org>
To: Ian Rogers <irogers@...gle.com>
Cc: Nick Chan <towinchenmi@...il.com>, Mark Rutland <mark.rutland@....com>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Catalin Marinas <catalin.marinas@....com>,
Janne Grunau <j@...nau.net>,
Alyssa Rosenzweig <alyssa@...enzweig.io>,
Neal Gompa <neal@...pa.dev>, Sven Peter <sven@...nel.org>,
Marc Zyngier <maz@...nel.org>, linux-arm-kernel@...ts.infradead.org,
linux-perf-users@...r.kernel.org, devicetree@...r.kernel.org,
asahi@...ts.linux.dev, linux-kernel@...r.kernel.org,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Subject: Re: [PATCH RESEND v7 00/21] drivers/perf: apple_m1: Add Apple
A7-A11, T2 SoC support
On Mon, Jun 16, 2025 at 03:44:49AM -0700, Ian Rogers wrote:
> On Mon, Jun 16, 2025 at 3:29 AM Will Deacon <will@...nel.org> wrote:
> >
> > On Mon, Jun 16, 2025 at 02:36:18AM -0700, Ian Rogers wrote:
> > > On Sun, Jun 15, 2025 at 6:32 PM Nick Chan <towinchenmi@...il.com> wrote:
> > > >
> > > > This series adds support for the CPU PMU in the older Apple A7-A11, T2
> > > > SoCs. These PMUs may have a different event layout, less counters, or
> > > > deliver their interrupts via IRQ instead of a FIQ. Since some of those
> > > > older SoCs support 32-bit EL0, counting for 32-bit EL0 also need to
> > > > be enabled by the driver where applicable.
> > > >
> > > > Patch 1 adds the DT bindings.
> > > > Patch 2-7 prepares the driver to allow adding support for those
> > > > older SoCs.
> > > > Patch 8-12 adds support for the older SoCs.
> > > > Patch 13-21 are the DT changes.
> > > >
> > > > Signed-off-by: Nick Chan <towinchenmi@...il.com>
> > >
> > > Hi Nick,
> > >
> > > This is substantial work and it looks good to me. Do you know why
> > > there's been little progress on landing these patches? Buggy Apple ARM
> > > PMU support in the kernel has led to reworking the perf tool. It seems
> > > best that we can have the best drivers possible.
> >
> > You reworked the perf tool to support these things? Why? These changes
> > are targetting chips in old iPhones afaict (as opposed to "Apple Silicon").
> > I think that (a) most people don't particularly care about them and (b)
> > they're not fully supported _anyway_ because of crazy stuff like [1].
>
> I was meaning that we reworked the perf tool to work around the Apple
> ARM PMU driver expecting to work as if it were an uncore rather than a
> core PMU driver. More context here:
> "[REGRESSION] Perf (userspace) broken on big.LITTLE systems since v6.5"
> https://lore.kernel.org/lkml/08f1f185-e259-4014-9ca4-6411d5c1bc65@marcan.st/
> But in general it would be nice Apple ARM PMU support were well loved.
> I think we went 2 or 3 minor releases with the perf tool not working,
> threats of substantial reverts to avoid the PMU driver bug being
> exposed, etc.
It's unfortunate that you've had a torrid time with the Apple PMU driver,
but I think it's important to realise that it's both unmaintained (it
ends up with me via the catch-all for drivers/perf/) and was written
based off whatever reverse-engineering people could be bothered to do in
their spare time. It's frankly remarkable that it works as well as it
does.
Despite all of that, I still don't think that your concerns apply to the
patches in _this_ series, which is about adding support for older Apple
chips.
> As for which Apple ARM devices should have perf support, it seems the
> more the merrier.
Easy to say when you don't have to maintain the driver!
Will
Powered by blists - more mailing lists