Re: [PATCH v13 19/32] x86/resctrl: Find and enable usable telemetry events

Reinette Chatre
2025-11-13T22:46:55Z

Hi Tony,

On 10/29/25 9:21 AM, Tony Luck wrote:
> resctrl requests a copy of struct pmt_feature_group from the INTEL_PMT_TELEMETRY
> driver for each event_group known to resctrl.
>
> Scan pmt_feature_group::regions[] and mark those that fail the following tests:
>
> 1) guid does not match the guid for the event_group.
> 2) Package ID is invalid.
> 3) The enumerated size of the MMIO region does not match the expected
> value from the XML description file.
>
> If there are any regions that pass all of these checks enable each of the
> telemetry events in event_group::evts[].

Above mostly just describes what can be seen from the patch. Below is a draft of an
attempt to change this:
Every event group has a private copy of the data of all telemetry event
aggregators (aka "telemetry regions") tracking its feature type. Included
may be regions that have the same feature type but tracking different
guid from the event group's.

Traverse the event group's telemetry region data and mark all regions that
are not usable by the event group as unusable by clearing those regions'
MMIO addresses. A region is considered unusable if:
1) guid does not match the guid of the event group.
2) Package ID is invalid.
3) The enumerated size of the MMIO region does not match the expected
value from the XML description file.

Hereafter any telemetry region with an MMIO address is considered valid
for the event group it is associated with.

Enable all the event group's events as long as there is at least one usable
region from where data for its events can be read.

>
> Note that it is architecturally possible that some telemetry events are only
> supported by a subset of the packages in the system. It is not expected that
> systems will ever do this. If they do the user will see event files in resctrl
> that always return "Unavailable".
>
> Signed-off-by: Tony Luck <tony.luck@intel.com>
> ---

Patch looks good to me.

Reinette