[PATCH] tools/perf/tests: Update event_groups test to use instructions as one of the sibling event for hw type

Ravi Bangoria ravi.bangoria at amd.com
Mon Jan 20 17:30:30 AEDT 2025


Hi Athira,

On 10-Jan-25 3:16 PM, Athira Rajeev wrote:
> In some of the powerpc platforms, event group testcase fails as below:
> 
>    # perf test -v 'Event groups'
>    69: Event groups                                                    :
>    --- start ---
>    test child forked, pid 9765
>    Using CPUID 0x00820200
>    Using hv_24x7 for uncore pmu event
>    0x0 0x0, 0x0 0x0, 0x0 0x0: Fail
>    0x0 0x0, 0x0 0x0, 0x1 0x3: Pass
> 
> The testcase creates various combinations of hw, sw and uncore
> PMU events and verify group creation succeeds or fails as expected.
> This tests one of the limitation in perf where it doesn't allow
> creating a group of events from different hw PMUs.
> 
> The testcase starts a leader event and opens two sibling events.
> The combination the fails is three hardware events in a group.
> "0x0 0x0, 0x0 0x0, 0x0 0x0: Fail"
> 
> Type zero and config zero which translates to PERF_TYPE_HARDWARE
> and PERF_COUNT_HW_CPU_CYCLE. There is event constraint in powerpc
> that events using same counter cannot be programmed in a group.
> Here there is one alternative event for cycles, hence one leader
> and only one sibling event can go in as a group.

For power9, cycles seems to map to PM_CYC event:

   GENERIC_EVENT_ATTR(cpu-cycles,                  PM_CYC);

However, I don't see PM_CYC in power9_event_alternatives[]. Is PM_RUN_CYC
and PM_CYC are same?

Thanks,
Ravi


More information about the Linuxppc-dev mailing list