From: Rafael J. Wysocki Date: Tue, 19 Feb 2019 23:26:30 +0000 (+0100) Subject: cpufreq: Pass updated policy to driver ->setpolicy() callback X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=167a38dcd5caaa85994ac8b7d2d1c20a71cd947b;p=openwrt%2Fstaging%2Fblogic.git cpufreq: Pass updated policy to driver ->setpolicy() callback The invocation of the ->setpolicy() cpufreq driver callback should be equivalent to calling cpufreq_governor_limits(policy) for drivers with internal governors, but in fact it isn't so, because the temporary new_policy object is passed to it instead of the updated policy. That is a bit confusing, so make cpufreq_set_policy() pass the updated policy to the driver ->setpolicy() callback. No intentional changes of behavior. Signed-off-by: Rafael J. Wysocki Acked-by: Viresh Kumar --- diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index 06b1a954d6e4..0e626b00053b 100644 --- a/drivers/cpufreq/cpufreq.c +++ b/drivers/cpufreq/cpufreq.c @@ -2286,7 +2286,7 @@ static int cpufreq_set_policy(struct cpufreq_policy *policy, if (cpufreq_driver->setpolicy) { policy->policy = new_policy->policy; pr_debug("setting range\n"); - return cpufreq_driver->setpolicy(new_policy); + return cpufreq_driver->setpolicy(policy); } if (new_policy->governor == policy->governor) {