RE: [PATCH V4 2/2] cpufreq: intel_pstate: Implement QoS supported freq constraints

From: Doug Smythies
Date: Fri Aug 09 2019 - 02:35:32 EST

On 2019.08.08 19:16 Viresh Kumar wrote:
> On 08-08-19, 09:25, Doug Smythies wrote:
>> On 2019.08.07 00:06 Viresh Kumar wrote:
>> Tested by: Doug Smythies <dsmythies@xxxxxxxxx>
>> Thermald seems to now be working O.K. for all the governors.
> Thanks for testing Doug.
>> I do note that if one sets
>> /sys/devices/system/cpu/cpufreq/policy*/scaling_max_freq
>> It seems to override subsequent attempts via
>> /sys/devices/system/cpu/intel_pstate/max_perf_pct.
>> Myself, I find this confusing.
>> So the question becomes which one is the "master"?
> No one is master, cpufreq takes all the requests for frequency
> constraints and tries to set the value based on aggregation of all. So
> for max frequency, the lowest value wins and is shown up in sysfs.
> So, everything looks okay to me.

O.K. While I understand the explanations, I still struggle with
this scenario:

doug@s15:~/temp$ cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
50 <<< Note: 50% = 1.9 GHz in my system)
doug@s15:~/temp$ grep . /sys/devices/system/cpu/cpufreq/policy*/scaling_max_freq

At this point I am not certain what I'll get if I try to
set max_perf_pct to 100%, nor do I know how to find out
with a user command.

So, I'll try it:

doug@s15:~/temp$ echo 100 | sudo tee /sys/devices/system/cpu/intel_pstate/max_perf_pct
doug@s15:~/temp$ cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
100 <<< Note: 100% = 3.8 GHz in my system)
doug@s15:~/temp$ grep . /sys/devices/system/cpu/cpufreq/policy*/scaling_max_freq

I guess I had set it sometime earlier, forgot, and then didn't
get 3.8 Ghz as I had expected via max_perf_pct.

... Doug