On Mon, Feb 03, 2025 at 10:10:26AM -0800, Oliver Upton wrote: > test_event_counter_config() checks that there is at least one event > counter but mistakenly uses counter 1 for part of the test. > > Most implementations have more than a single event counter which is > probably why this went unnoticed. However, due to limitations of the > underlying hardware, KVM's PMUv3 emulation on Apple silicon can only > provide 1 event counter. > > Consistenly use counter 0 throughout the test, matching the precondition > and allowing the test to pass on Apple parts. > > Cc: Eric Auger <eric.auger@xxxxxxxxxx> > Fixes: 4ce2a804 ("arm: pmu: Basic event counter Tests") > Signed-off-by: Oliver Upton <oliver.upton@xxxxxxxxx> > --- > arm/pmu.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/arm/pmu.c b/arm/pmu.c > index 9ff7a301..2dc0822b 100644 > --- a/arm/pmu.c > +++ b/arm/pmu.c > @@ -396,13 +396,13 @@ static void test_event_counter_config(void) > * Test setting through PMESELR/PMXEVTYPER and PMEVTYPERn read, > * select counter 0 > */ > - write_sysreg(1, PMSELR_EL0); > + write_sysreg(0, PMSELR_EL0); > /* program this counter to count unsupported event */ > write_sysreg(0xEA, PMXEVTYPER_EL0); > write_sysreg(0xdeadbeef, PMXEVCNTR_EL0); > - report((read_regn_el0(pmevtyper, 1) & 0xFFF) == 0xEA, > + report((read_regn_el0(pmevtyper, 0) & 0xFFF) == 0xEA, > "PMESELR/PMXEVTYPER/PMEVTYPERn"); > - report((read_regn_el0(pmevcntr, 1) == 0xdeadbeef), > + report((read_regn_el0(pmevcntr, 0) == 0xdeadbeef), > "PMESELR/PMXEVCNTR/PMEVCNTRn"); > > /* try to configure an unsupported event within the range [0x0, 0x3F] */ > > base-commit: 1f08a91a41402b0e032ecce8ed1b5952cbfca0ea > -- > 2.39.5 > Merged. Thanks, drew