intel_pstate: skip scheduler hook when in "performance" mode

When the governor is set to "performance", intel_pstate does not
need the scheduler hook for doing any calculations.  Under these
conditions, its only purpose is to continue to maintain
cpufreq/scaling_cur_freq.

The cpufreq/scaling_cur_freq sysfs attribute is now provided by
shared x86 cpufreq code on modern x86 systems, including
all systems supported by the intel_pstate driver.

So in "performance" governor mode, the scheduler hook can be skipped.
This applies to both in Software and Hardware P-state control modes.

Suggested-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Len Brown 2017-06-23 22:11:54 -07:00 committed by Rafael J. Wysocki
parent 62611cb912
commit 82b4e03e01

View File

@ -2044,10 +2044,10 @@ static int intel_pstate_set_policy(struct cpufreq_policy *policy)
*/ */
intel_pstate_clear_update_util_hook(policy->cpu); intel_pstate_clear_update_util_hook(policy->cpu);
intel_pstate_max_within_limits(cpu); intel_pstate_max_within_limits(cpu);
} else {
intel_pstate_set_update_util_hook(policy->cpu);
} }
intel_pstate_set_update_util_hook(policy->cpu);
if (hwp_active) if (hwp_active)
intel_pstate_hwp_set(policy->cpu); intel_pstate_hwp_set(policy->cpu);