linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] cpufreq, docs: (userspace governor) add that actual freq is >= scaling_setspeed
@ 2025-05-22  8:05 Shashank Balaji
  2025-05-22  8:50 ` Russell Haley
  0 siblings, 1 reply; 14+ messages in thread
From: Shashank Balaji @ 2025-05-22  8:05 UTC (permalink / raw)
  To: Rafael J. Wysocki, Viresh Kumar, Jonathan Corbet
  Cc: linux-pm, linux-doc, linux-kernel, Shinya Takumi, Shashank Balaji

The userspace governor does not have the CPUFREQ_GOV_STRICT_TARGET flag, which
means the requested frequency may not strictly be followed. This is true in the
case of the intel_pstate driver with HWP enabled. When programming the
HWP_REQUEST MSR, the min_perf is set to `scaling_setspeed`, and the max_perf
is set to the policy's max. So, the hardware is free to increase the frequency
beyond the requested frequency.

This behaviour can be slightly surprising, given the current wording "allows
userspace to set the CPU frequency". Hence, document this.

Signed-off-by: Shashank Balaji <shashank.mahadasyam@sony.com>
---
 Documentation/admin-guide/pm/cpufreq.rst | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/Documentation/admin-guide/pm/cpufreq.rst b/Documentation/admin-guide/pm/cpufreq.rst
index 3950583f2b1549b27f568632547e22e9ef8bc167..066fe74f856699c8dd6aaf5e135162ce70686333 100644
--- a/Documentation/admin-guide/pm/cpufreq.rst
+++ b/Documentation/admin-guide/pm/cpufreq.rst
@@ -397,8 +397,15 @@ policy limits change after that.
 -------------
 
 This governor does not do anything by itself.  Instead, it allows user space
-to set the CPU frequency for the policy it is attached to by writing to the
-``scaling_setspeed`` attribute of that policy.
+to set a target CPU frequency for the policy it is attached to by writing to the
+``scaling_setspeed`` attribute of that policy. The actual frequency will be
+greater than or equal to ``scaling_setspeed``, depending on the cpufreq driver.
+For example, if hardware-managed P-states are enabled, then the ``intel_pstate``
+driver will set the minimum frequency to the value of ``scaling_setspeed`` and
+the maximum frequency to the value of ``scaling_max_freq``.  The hardware is
+free to select any frequency between those two values. If this behavior is not
+desired, then ``scaling_max_freq`` should be set to the same value as
+``scaling_setspeed``.
 
 ``schedutil``
 -------------

---
base-commit: d608703fcdd9e9538f6c7a0fcf98bf79b1375b60
change-id: 20250522-userspace-governor-doc-86380dbab3d5

Best regards,
-- 
Shashank Balaji <shashank.mahadasyam@sony.com>


^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2025-05-27 12:00 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-22  8:05 [PATCH] cpufreq, docs: (userspace governor) add that actual freq is >= scaling_setspeed Shashank Balaji
2025-05-22  8:50 ` Russell Haley
2025-05-22  9:46   ` Shashank Balaji
2025-05-22  9:56     ` Rafael J. Wysocki
2025-05-22 11:15     ` Russell Haley
2025-05-22  9:47   ` Rafael J. Wysocki
2025-05-22 11:15     ` Russell Haley
2025-05-22 11:54       ` Rafael J. Wysocki
2025-05-23 18:57         ` Rafael J. Wysocki
2025-05-23  4:25       ` Shashank Balaji
2025-05-23 19:06         ` Rafael J. Wysocki
2025-05-23 21:47           ` Russell Haley
2025-05-27  8:21           ` Shashank Balaji
2025-05-27 12:00             ` Rafael J. Wysocki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).