Re: [PATCH v4 5/8] ACPI: CPPC: add APIs and sysfs interface for perf_limited register

From: Sumit Gupta
Date: Tue Nov 18 2025 - 05:23:10 EST



On 13/11/25 17:05, Ionela Voinescu wrote:
External email: Use caution opening links or attachments


Hi,

On Wednesday 05 Nov 2025 at 17:08:41 (+0530), Sumit Gupta wrote:
Add sysfs interface to read/write the Performance Limited register.

The Performance Limited register indicates to the OS that an
unpredictable event (like thermal throttling) has limited processor
performance. This register is sticky and remains set until reset or
OS clears it by writing 0.

The interface is exposed as:
/sys/devices/system/cpu/cpuX/cpufreq/perf_limited
What is the intended use of this interface? The performance limited
register has a specific format of status bits with feedback about
performance being limited temporarily and the user can only clear it.

"Contains a resource descriptor with a single Register() descriptor
that describes the register to read to determine if performance was
limited. A nonzero value indicates performance was limited. This
register is sticky, and will remain set until reset or OSPM clears
it by writing 0. See the section “Performance Limiting” for more
details." Also, "The performance limited register should only be used
to report short term, unpredictable events (e.g., PROCHOT being
asserted)."

Therefore, I'm not seeing the value of exposing this via sysfs.

Thanks,
Ionela.


This enables users to detect if platform throttling impacted a workload.
Users clear the register before execution, run the workload, then check
afterward if set, hardware throttling (thermal/power/current limits)
occurred during that time window. The write operation can be restricted
to only accept 0 (clearing) to prevent writing arbitrary values.

Thank you,
Sumit Gupta

....