diff mbox

cpufreq: Fix incorrect usage of clamp_val()

Message ID 4985583.nmytFqifgB@vostro.rjw.lan (mailing list archive)
State Accepted, archived
Delegated to: Rafael Wysocki
Headers show

Commit Message

Rafael J. Wysocki May 31, 2016, 8:46 p.m. UTC
On Tuesday, May 31, 2016 11:23:08 AM Steve Muckle wrote:
> On Tue, May 31, 2016 at 04:49:42PM +0530, Viresh Kumar wrote:
> > clamp_val() doesn't change anything by itself, rather it returns the
> > clamped value.
> > 
> > Fix it.
> > 
> > Fixes: 0ac587b32f49 ("cpufreq: Use clamp_val() in __cpufreq_driver_target()")
> > Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> > ---
> > Hi Rafael,
> > 
> > Please merge this with the offending commit if you are fine with rebase,
> > else apply this one as well.
> > 
> > Sorry for blindly copying code.
> > 
> >  drivers/cpufreq/cpufreq.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
> > index d0c02a7eec0f..c6a14ba239a2 100644
> > --- a/drivers/cpufreq/cpufreq.c
> > +++ b/drivers/cpufreq/cpufreq.c
> > @@ -1927,7 +1927,7 @@ int __cpufreq_driver_target(struct cpufreq_policy *policy,
> >  		return -ENODEV;
> >  
> >  	/* Make sure that target_freq is within supported range */
> > -	clamp_val(target_freq, policy->min, policy->max);
> > +	target_freq = clamp_val(target_freq, policy->min, policy->max);
> >  
> >  	pr_debug("target for CPU %u: %u kHz, relation %u, requested %u kHz\n",
> >  		 policy->cpu, target_freq, relation, old_target_freq);
> 
> As mentioned in the other thread cpufreq_driver_fast_switch() has this
> problem as well, might as well fix it in this patch also.

Patch apppended.

---
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Subject: [PATCH] cpufreq: Fix clamp_val() usage in cpufreq_driver_fast_switch()

The return value of clamp_val() has to be stored actually.

Fixes: b7898fda5bc7 (cpufreq: Support for fast frequency switching)
Reported-by: Steve Muckle <steve.muckle@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
 drivers/cpufreq/cpufreq.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


--
To unsubscribe from this list: send the line "unsubscribe linux-pm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Viresh Kumar June 1, 2016, 1:32 a.m. UTC | #1
On 31-05-16, 22:46, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> Subject: [PATCH] cpufreq: Fix clamp_val() usage in cpufreq_driver_fast_switch()
> 
> The return value of clamp_val() has to be stored actually.
> 
> Fixes: b7898fda5bc7 (cpufreq: Support for fast frequency switching)
> Reported-by: Steve Muckle <steve.muckle@linaro.org>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> ---
>  drivers/cpufreq/cpufreq.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> Index: linux-pm/drivers/cpufreq/cpufreq.c
> ===================================================================
> --- linux-pm.orig/drivers/cpufreq/cpufreq.c
> +++ linux-pm/drivers/cpufreq/cpufreq.c
> @@ -1829,7 +1829,7 @@ EXPORT_SYMBOL(cpufreq_unregister_notifie
>  unsigned int cpufreq_driver_fast_switch(struct cpufreq_policy *policy,
>  					unsigned int target_freq)
>  {
> -	clamp_val(target_freq, policy->min, policy->max);
> +	target_freq = clamp_val(target_freq, policy->min, policy->max);
>  
>  	return cpufreq_driver->fast_switch(policy, target_freq);
>  }

I should have at least grepped for it during my fix.

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
diff mbox

Patch

Index: linux-pm/drivers/cpufreq/cpufreq.c
===================================================================
--- linux-pm.orig/drivers/cpufreq/cpufreq.c
+++ linux-pm/drivers/cpufreq/cpufreq.c
@@ -1829,7 +1829,7 @@  EXPORT_SYMBOL(cpufreq_unregister_notifie
 unsigned int cpufreq_driver_fast_switch(struct cpufreq_policy *policy,
 					unsigned int target_freq)
 {
-	clamp_val(target_freq, policy->min, policy->max);
+	target_freq = clamp_val(target_freq, policy->min, policy->max);
 
 	return cpufreq_driver->fast_switch(policy, target_freq);
 }