Commit 14ca0bdf authored by Viresh Kumar's avatar Viresh Kumar Committed by Rafael J. Wysocki
Browse files

cpufreq: update user_policy.* on success



'user_policy' caches properties of a policy that are set by userspace.
And these must be updated only if cpufreq core was successful in
updating them based on request from user space.

In store_scaling_governor(), we are updating user_policy.policy and
user_policy.governor even if cpufreq_set_policy() failed. That's
incorrect.

Fix this by updating user_policy.* only if we were successful in
updating the properties.

Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 8fa5b631
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -671,13 +671,11 @@ static ssize_t store_scaling_governor(struct cpufreq_policy *policy,
		return -EINVAL;

	ret = cpufreq_set_policy(policy, &new_policy);
	if (ret)
		return ret;

	policy->user_policy.policy = policy->policy;
	policy->user_policy.governor = policy->governor;

	if (ret)
		return ret;
	else
	return count;
}