diff mbox series

cpufreq: amd-pstate: Fix uninitialized variable in amd_pstate_cpu_boost_update()

Message ID 7ff53543-6c04-48a0-8d99-7dc010b93b3a@stanley.mountain
State Accepted
Commit 67d95303c84732c2e1de5730756281f648dbefaf
Headers show
Series cpufreq: amd-pstate: Fix uninitialized variable in amd_pstate_cpu_boost_update() | expand

Commit Message

Dan Carpenter July 18, 2024, 8:08 p.m. UTC
Smatch complains that "ret" could be uninitialized:

  drivers/cpufreq/amd-pstate.c:734 amd_pstate_cpu_boost_update()
  error: uninitialized symbol 'ret'.

This seems like it probably is a real issue.  Initialize "ret" to zero to
be safe.

Fixes: c8c68c38b56f ("cpufreq: amd-pstate: initialize core precision boost state")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
 drivers/cpufreq/amd-pstate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Yuan, Perry July 19, 2024, 6:38 a.m. UTC | #1
[AMD Official Use Only - AMD Internal Distribution Only]

Hi Dan,

> -----Original Message-----
> From: Dan Carpenter <dan.carpenter@linaro.org>
> Sent: Friday, July 19, 2024 4:09 AM
> To: Yuan, Perry <Perry.Yuan@amd.com>
> Cc: Huang, Ray <Ray.Huang@amd.com>; Shenoy, Gautham Ranjal
> <gautham.shenoy@amd.com>; Limonciello, Mario
> <Mario.Limonciello@amd.com>; Yuan, Perry <Perry.Yuan@amd.com>; Rafael
> J. Wysocki <rafael@kernel.org>; Viresh Kumar <viresh.kumar@linaro.org>;
> linux-pm@vger.kernel.org; linux-kernel@vger.kernel.org; kernel-
> janitors@vger.kernel.org
> Subject: [PATCH] cpufreq: amd-pstate: Fix uninitialized variable in
> amd_pstate_cpu_boost_update()
>
> Smatch complains that "ret" could be uninitialized:
>
>   drivers/cpufreq/amd-pstate.c:734 amd_pstate_cpu_boost_update()
>   error: uninitialized symbol 'ret'.
>
> This seems like it probably is a real issue.  Initialize "ret" to zero to be safe.
>
> Fixes: c8c68c38b56f ("cpufreq: amd-pstate: initialize core precision boost
> state")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---
>  drivers/cpufreq/amd-pstate.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
> index 68c616b572f2..358bd88cd0c5 100644
> --- a/drivers/cpufreq/amd-pstate.c
> +++ b/drivers/cpufreq/amd-pstate.c
> @@ -692,7 +692,7 @@ static int amd_pstate_cpu_boost_update(struct
> cpufreq_policy *policy, bool on)
>       struct amd_cpudata *cpudata = policy->driver_data;
>       struct cppc_perf_ctrls perf_ctrls;
>       u32 highest_perf, nominal_perf, nominal_freq, max_freq;
> -     int ret;
> +     int ret = 0;
>
>       highest_perf = READ_ONCE(cpudata->highest_perf);
>       nominal_perf = READ_ONCE(cpudata->nominal_perf);
> --
> 2.43.0

Thanks for the fix.
LGTM
Reviewed-by: Perry Yuan <perry.yuan@amd.com>
Gautham R. Shenoy July 22, 2024, 8:55 a.m. UTC | #2
Hello Dan,


On Thu, Jul 18, 2024 at 03:08:36PM -0500, Dan Carpenter wrote:
> Smatch complains that "ret" could be uninitialized:
> 
>   drivers/cpufreq/amd-pstate.c:734 amd_pstate_cpu_boost_update()
>   error: uninitialized symbol 'ret'.
> 
> This seems like it probably is a real issue.  Initialize "ret" to zero to
> be safe.


Thanks for catching this. Yes, it is a real issue on MSR based
platforms when the amd-pstate driver is not in the passive mode.

> 
> Fixes: c8c68c38b56f ("cpufreq: amd-pstate: initialize core precision boost state")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>

Acked-by: Gautham R. Shenoy <gautham.shenoy@amd.com>


> ---
>  drivers/cpufreq/amd-pstate.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
> index 68c616b572f2..358bd88cd0c5 100644
> --- a/drivers/cpufreq/amd-pstate.c
> +++ b/drivers/cpufreq/amd-pstate.c
> @@ -692,7 +692,7 @@ static int amd_pstate_cpu_boost_update(struct cpufreq_policy *policy, bool on)
>  	struct amd_cpudata *cpudata = policy->driver_data;
>  	struct cppc_perf_ctrls perf_ctrls;
>  	u32 highest_perf, nominal_perf, nominal_freq, max_freq;
> -	int ret;
> +	int ret = 0;
>  
>  	highest_perf = READ_ONCE(cpudata->highest_perf);
>  	nominal_perf = READ_ONCE(cpudata->nominal_perf);
> -- 
> 2.43.0
>
diff mbox series

Patch

diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
index 68c616b572f2..358bd88cd0c5 100644
--- a/drivers/cpufreq/amd-pstate.c
+++ b/drivers/cpufreq/amd-pstate.c
@@ -692,7 +692,7 @@  static int amd_pstate_cpu_boost_update(struct cpufreq_policy *policy, bool on)
 	struct amd_cpudata *cpudata = policy->driver_data;
 	struct cppc_perf_ctrls perf_ctrls;
 	u32 highest_perf, nominal_perf, nominal_freq, max_freq;
-	int ret;
+	int ret = 0;
 
 	highest_perf = READ_ONCE(cpudata->highest_perf);
 	nominal_perf = READ_ONCE(cpudata->nominal_perf);