summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSyed Rameez Mustafa <rameezmustafa@codeaurora.org>2015-02-11 14:47:39 -0800
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 20:01:47 -0700
commit6832b1d70e7fd9470e43812cc0c384c4e1bf535a (patch)
tree4bcaf374b005cf5a670e8718dde1bd2a8c17578c
parent3fe87bc057a3104dbacc9dc300bc70370e3242bb (diff)
sched: Update cur_freq in the cpufreq policy notifier callback
At boot, the cpufreq framework sends transition notifiers before sending out the policy notifier. Since the scheduler relies on the policy notifier to build up the frequency domain masks, when the initial set of transition notifiers are sent, the scheduler has no frequency domains. As a result the scheduler fails to update the cur_freq information. Update cur_freq as part of the policy notifier so that the scheduler always has the current frequency information. Change-Id: I7bd2958dfeb064dd20b9ccebafd372436484e5d6 Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>
-rw-r--r--kernel/sched/core.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index b4bb96da4efb..7a97ee4b6a54 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -2402,6 +2402,7 @@ static int cpufreq_notifier_policy(struct notifier_block *nb,
orig_max_freq = cpu_rq(i)->max_freq;
cpu_rq(i)->min_freq = policy->min;
cpu_rq(i)->max_freq = policy->max;
+ cpu_rq(i)->cur_freq = policy->cur;
cpu_rq(i)->max_possible_freq = policy->cpuinfo.max_freq;
}