Re: [PATCH v1 2/2] cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not there
From: Peter Zijlstra <peterz@infradead.org>
Date: 2021-02-05 12:02:52
Also in:
linux-acpi, lkml
From: Peter Zijlstra <peterz@infradead.org>
Date: 2021-02-05 12:02:52
Also in:
linux-acpi, lkml
On Thu, Feb 04, 2021 at 06:34:32PM +0100, Rafael J. Wysocki wrote:
arch/x86/kernel/smpboot.c | 1 + drivers/cpufreq/acpi-cpufreq.c | 8 ++++++++ 2 files changed, 9 insertions(+) Index: linux-pm/drivers/cpufreq/acpi-cpufreq.c ===================================================================--- linux-pm.orig/drivers/cpufreq/acpi-cpufreq.c +++ linux-pm/drivers/cpufreq/acpi-cpufreq.c@@ -806,6 +806,14 @@ static int acpi_cpufreq_cpu_init(struct state_count++; valid_states++; data->first_perf_state = valid_states; + } else { + /* + * If the maximum "boost" frequency is unknown, ask the arch + * scale-invariance code to use the "nominal" performance for + * CPU utilization scaling so as to prevent the schedutil + * governor from selecting inadequate CPU frequencies. + */ + arch_set_max_freq_ratio(true); } freq_table = kcalloc(state_count, sizeof(*freq_table), GFP_KERNEL);Index: linux-pm/arch/x86/kernel/smpboot.c ===================================================================--- linux-pm.orig/arch/x86/kernel/smpboot.c +++ linux-pm/arch/x86/kernel/smpboot.c@@ -1833,6 +1833,7 @@ void arch_set_max_freq_ratio(bool turbo_ arch_max_freq_ratio = turbo_disabled ? SCHED_CAPACITY_SCALE : arch_turbo_freq_ratio; } +EXPORT_SYMBOL_GPL(arch_set_max_freq_ratio);
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>