cpufreq: acpi: Only set boost MSRs on supported CPUs

Message ID 20221205175744.9746-1-stuart.w.hayes@gmail.com
State New
Headers
Series cpufreq: acpi: Only set boost MSRs on supported CPUs |

Commit Message

stuart hayes Dec. 5, 2022, 5:57 p.m. UTC
  Stop trying to set boost MSRs on CPUs that don't support boost.

This corrects a bug in the recent patch "Defer setting boost MSRs".

Signed-off-by: Stuart Hayes <stuart.w.hayes@gmail.com>
---
 drivers/cpufreq/acpi-cpufreq.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Comments

stuart hayes Dec. 5, 2022, 6:07 p.m. UTC | #1
On 12/5/2022 11:57 AM, Stuart Hayes wrote:
> Stop trying to set boost MSRs on CPUs that don't support boost.
> 
> This corrects a bug in the recent patch "Defer setting boost MSRs".
> 
> Signed-off-by: Stuart Hayes <stuart.w.hayes@gmail.com>
> ---
>   drivers/cpufreq/acpi-cpufreq.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c
> index bb58175a8d40..a7c5e312340e 100644
> --- a/drivers/cpufreq/acpi-cpufreq.c
> +++ b/drivers/cpufreq/acpi-cpufreq.c
> @@ -888,7 +888,8 @@ static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy)
>   	if (perf->states[0].core_frequency * 1000 != freq_table[0].frequency)
>   		pr_warn(FW_WARN "P-state 0 is not max freq\n");
>   
> -	set_boost(policy, acpi_cpufreq_driver.boost_enabled);
> +	if (acpi_cpufreq_driver.set_boost)
> +		set_boost(policy, acpi_cpufreq_driver.boost_enabled);
>   
>   	return result;
>   

My apologies--adding Boris, I forgot to put him on the "to" list.
  
Borislav Petkov Dec. 6, 2022, 10:20 a.m. UTC | #2
On Mon, Dec 05, 2022 at 12:07:05PM -0600, stuart hayes wrote:
> 
> 
> On 12/5/2022 11:57 AM, Stuart Hayes wrote:
> > Stop trying to set boost MSRs on CPUs that don't support boost.
> > 
> > This corrects a bug in the recent patch "Defer setting boost MSRs".
> > 
> > Signed-off-by: Stuart Hayes <stuart.w.hayes@gmail.com>
> > ---
> >   drivers/cpufreq/acpi-cpufreq.c | 3 ++-
> >   1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c
> > index bb58175a8d40..a7c5e312340e 100644
> > --- a/drivers/cpufreq/acpi-cpufreq.c
> > +++ b/drivers/cpufreq/acpi-cpufreq.c
> > @@ -888,7 +888,8 @@ static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy)
> >   	if (perf->states[0].core_frequency * 1000 != freq_table[0].frequency)
> >   		pr_warn(FW_WARN "P-state 0 is not max freq\n");
> > -	set_boost(policy, acpi_cpufreq_driver.boost_enabled);
> > +	if (acpi_cpufreq_driver.set_boost)
> > +		set_boost(policy, acpi_cpufreq_driver.boost_enabled);
> >   	return result;
> 
> My apologies--adding Boris, I forgot to put him on the "to" list.

Yap, that does it.

Reported-by: Borislav Petkov (AMD) <bp@alien8.de>
Tested-by: Borislav Petkov (AMD) <bp@alien8.de>

Thx.
  
Rafael J. Wysocki Dec. 6, 2022, 11:17 a.m. UTC | #3
On Tue, Dec 6, 2022 at 11:20 AM Borislav Petkov <bp@alien8.de> wrote:
>
> On Mon, Dec 05, 2022 at 12:07:05PM -0600, stuart hayes wrote:
> >
> >
> > On 12/5/2022 11:57 AM, Stuart Hayes wrote:
> > > Stop trying to set boost MSRs on CPUs that don't support boost.
> > >
> > > This corrects a bug in the recent patch "Defer setting boost MSRs".
> > >
> > > Signed-off-by: Stuart Hayes <stuart.w.hayes@gmail.com>
> > > ---
> > >   drivers/cpufreq/acpi-cpufreq.c | 3 ++-
> > >   1 file changed, 2 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c
> > > index bb58175a8d40..a7c5e312340e 100644
> > > --- a/drivers/cpufreq/acpi-cpufreq.c
> > > +++ b/drivers/cpufreq/acpi-cpufreq.c
> > > @@ -888,7 +888,8 @@ static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy)
> > >     if (perf->states[0].core_frequency * 1000 != freq_table[0].frequency)
> > >             pr_warn(FW_WARN "P-state 0 is not max freq\n");
> > > -   set_boost(policy, acpi_cpufreq_driver.boost_enabled);
> > > +   if (acpi_cpufreq_driver.set_boost)
> > > +           set_boost(policy, acpi_cpufreq_driver.boost_enabled);
> > >     return result;
> >
> > My apologies--adding Boris, I forgot to put him on the "to" list.
>
> Yap, that does it.
>
> Reported-by: Borislav Petkov (AMD) <bp@alien8.de>
> Tested-by: Borislav Petkov (AMD) <bp@alien8.de>

OK, applied, thanks!
  

Patch

diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c
index bb58175a8d40..a7c5e312340e 100644
--- a/drivers/cpufreq/acpi-cpufreq.c
+++ b/drivers/cpufreq/acpi-cpufreq.c
@@ -888,7 +888,8 @@  static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy)
 	if (perf->states[0].core_frequency * 1000 != freq_table[0].frequency)
 		pr_warn(FW_WARN "P-state 0 is not max freq\n");
 
-	set_boost(policy, acpi_cpufreq_driver.boost_enabled);
+	if (acpi_cpufreq_driver.set_boost)
+		set_boost(policy, acpi_cpufreq_driver.boost_enabled);
 
 	return result;