Re: [GIT PULL] perf tools changes for v6.10

From: Linus Torvalds
Date: Sat May 25 2024 - 00:20:34 EST


On Fri, 24 May 2024 at 20:48, Ian Rogers <irogers@xxxxxxxxxx> wrote:
>
> Thanks for the report. TL;DR try putting the PMU name with the event
> name, so "cycles:pp" becomes "armv8_pmuv3_0/cycles/pp", where
> armv8_pmuv3_0 is the name of the PMU from /sys/devices.

What? No.

If that is the new rule, then I'm just going to revert. I'm not going
to use some random different PMU names across architectures when all I
want is just "cycles".

In fact, the "cycles:pp" is a complete red herring. Just doing a simple

$ perf record sleep 1

with no explicit expression at all, results in that same

Error:
cycles:P: PMU Hardware doesn't support sampling/overflow-interrupts.
Try 'perf stat'

because perf *ITSELF* uses the sane format by default.

So ABSOLUTELY NO. We're not changing the rules to "You have to know
some idiotic per-architecture JSON magic".

I don't want any excuses like this. No "You are holding it wrong".
This is a BUG. Treat it as such.

And yes, "perf record -vv" shows that it apparently picked some insane
arm_dsu_0 event. Which just shows that trying to parse the JSON rules
instead of just having sane defaults is clearly not working.

So here's the deal: I will revert your commit tomorrow unless you show
that you are taking it seriously and have a sane fix.

Because no, "You are holding it wrong" is not the answer. Never was,
never will be. Things used to work, they don't work any more. That
shit is not acceptable.

Linus