Message ID | 20240213223948.1865489-1-daniel.lezcano@linaro.org (mailing list archive) |
---|---|
State | Mainlined, archived |
Headers | show |
Series | powercap: dtpm_cpu: Fix error check against freq_qos_add_request() | expand |
On Tue, Feb 13, 2024 at 11:39 PM Daniel Lezcano <daniel.lezcano@linaro.org> wrote: > > The caller of the function freq_qos_add_request() checks again a non > zero value but freq_qos_add_request() can return '1' if the request > already exists. Therefore, the setup function fails while the QoS > request actually did not failed. > > Fix that by changing the check against a negative value like all the > other callers of the function. > > Fixes: 0e8f68d7f0485 ("Add CPU energy model based support") > Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> > --- > drivers/powercap/dtpm_cpu.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/powercap/dtpm_cpu.c b/drivers/powercap/dtpm_cpu.c > index 9193c3b8edeb..ae7ee611978b 100644 > --- a/drivers/powercap/dtpm_cpu.c > +++ b/drivers/powercap/dtpm_cpu.c > @@ -219,7 +219,7 @@ static int __dtpm_cpu_setup(int cpu, struct dtpm *parent) > ret = freq_qos_add_request(&policy->constraints, > &dtpm_cpu->qos_req, FREQ_QOS_MAX, > pd->table[pd->nr_perf_states - 1].frequency); > - if (ret) > + if (ret < 0) > goto out_dtpm_unregister; > > cpufreq_cpu_put(policy); > -- Applied as 6.9 material, thanks!
diff --git a/drivers/powercap/dtpm_cpu.c b/drivers/powercap/dtpm_cpu.c index 9193c3b8edeb..ae7ee611978b 100644 --- a/drivers/powercap/dtpm_cpu.c +++ b/drivers/powercap/dtpm_cpu.c @@ -219,7 +219,7 @@ static int __dtpm_cpu_setup(int cpu, struct dtpm *parent) ret = freq_qos_add_request(&policy->constraints, &dtpm_cpu->qos_req, FREQ_QOS_MAX, pd->table[pd->nr_perf_states - 1].frequency); - if (ret) + if (ret < 0) goto out_dtpm_unregister; cpufreq_cpu_put(policy);
The caller of the function freq_qos_add_request() checks again a non zero value but freq_qos_add_request() can return '1' if the request already exists. Therefore, the setup function fails while the QoS request actually did not failed. Fix that by changing the check against a negative value like all the other callers of the function. Fixes: 0e8f68d7f0485 ("Add CPU energy model based support") Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> --- drivers/powercap/dtpm_cpu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)