Message ID | 7ff53543-6c04-48a0-8d99-7dc010b93b3a@stanley.mountain (mailing list archive) |
---|---|
State | Superseded, archived |
Delegated to: | Mario Limonciello |
Headers | show |
Series | cpufreq: amd-pstate: Fix uninitialized variable in amd_pstate_cpu_boost_update() | expand |
[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>
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 --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);
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(-)