[PATCH] cpufreq: cppc: Fix invalid return value in .get() callback

Marc Zyngier posted 1 patch 8 months, 1 week ago
drivers/cpufreq/cppc_cpufreq.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] cpufreq: cppc: Fix invalid return value in .get() callback
Posted by Marc Zyngier 8 months, 1 week ago
Returning a negative error code in a function with an unsigned
return type is a pretty bad idea. It is probably worse when the
justification for the change is "our static analisys tool found it".

Fixes: cf7de25878a1 ("cppc_cpufreq: Fix possible null pointer dereference")
Signed-off-by: Marc Zyngier <maz@kernel.org>
Cc: stable@vger.kernel.org
Cc: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
---
 drivers/cpufreq/cppc_cpufreq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c
index b3d74f9adcf0b..cb93f00bafdba 100644
--- a/drivers/cpufreq/cppc_cpufreq.c
+++ b/drivers/cpufreq/cppc_cpufreq.c
@@ -747,7 +747,7 @@ static unsigned int cppc_cpufreq_get_rate(unsigned int cpu)
 	int ret;
 
 	if (!policy)
-		return -ENODEV;
+		return 0;
 
 	cpu_data = policy->driver_data;
 
-- 
2.39.2
Re: [PATCH] cpufreq: cppc: Fix invalid return value in .get() callback
Posted by zhenglifeng (A) 8 months, 1 week ago
On 2025/4/13 18:11, Marc Zyngier wrote:

> Returning a negative error code in a function with an unsigned
> return type is a pretty bad idea. It is probably worse when the
> justification for the change is "our static analisys tool found it".
> 
> Fixes: cf7de25878a1 ("cppc_cpufreq: Fix possible null pointer dereference")
> Signed-off-by: Marc Zyngier <maz@kernel.org>
> Cc: stable@vger.kernel.org
> Cc: "Rafael J. Wysocki" <rafael@kernel.org>
> Cc: Viresh Kumar <viresh.kumar@linaro.org>
> ---
>  drivers/cpufreq/cppc_cpufreq.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c
> index b3d74f9adcf0b..cb93f00bafdba 100644
> --- a/drivers/cpufreq/cppc_cpufreq.c
> +++ b/drivers/cpufreq/cppc_cpufreq.c
> @@ -747,7 +747,7 @@ static unsigned int cppc_cpufreq_get_rate(unsigned int cpu)
>  	int ret;
>  
>  	if (!policy)
> -		return -ENODEV;
> +		return 0;
>  
>  	cpu_data = policy->driver_data;
>  

Reviewed-by: Lifeng Zheng <zhenglifeng1@huawei.com>
Re: [PATCH] cpufreq: cppc: Fix invalid return value in .get() callback
Posted by Viresh Kumar 8 months, 1 week ago
On 14-04-25, 09:35, zhenglifeng (A) wrote:
> On 2025/4/13 18:11, Marc Zyngier wrote:
> > diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c
> > index b3d74f9adcf0b..cb93f00bafdba 100644
> > --- a/drivers/cpufreq/cppc_cpufreq.c
> > +++ b/drivers/cpufreq/cppc_cpufreq.c
> > @@ -747,7 +747,7 @@ static unsigned int cppc_cpufreq_get_rate(unsigned int cpu)
> >  	int ret;
> >  
> >  	if (!policy)
> > -		return -ENODEV;
> > +		return 0;
> >  
> >  	cpu_data = policy->driver_data;
> >  
> 
> Reviewed-by: Lifeng Zheng <zhenglifeng1@huawei.com>

Applied. Thanks.

-- 
viresh