From 09dca5ae7531c9df379a2c2484a17438b9e947bc Mon Sep 17 00:00:00 2001 From: Fabio Baltieri Date: Thu, 31 Jan 2013 10:39:19 +0000 Subject: cpufreq: governors: fix misuse of cdbs.cpu Fix governors code to set all cpu's cdbs->cpu to the the actual cpu id and use cur_policy->cpu istead of cdbs->cpu to track current governor's leader cpu. Reported-by: Viresh Kumar Signed-off-by: Fabio Baltieri Acked-by: Viresh Kumar Signed-off-by: Rafael J. Wysocki --- drivers/cpufreq/cpufreq_conservative.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'drivers/cpufreq/cpufreq_conservative.c') diff --git a/drivers/cpufreq/cpufreq_conservative.c b/drivers/cpufreq/cpufreq_conservative.c index 653fb0652412..c18a304b3a38 100644 --- a/drivers/cpufreq/cpufreq_conservative.c +++ b/drivers/cpufreq/cpufreq_conservative.c @@ -114,7 +114,7 @@ static void cs_check_cpu(int cpu, unsigned int load) static void cs_timer_update(struct cs_cpu_dbs_info_s *dbs_info, bool sample, struct delayed_work *dw) { - unsigned int cpu = dbs_info->cdbs.cpu; + unsigned int cpu = dbs_info->cdbs.cur_policy->cpu; int delay = delay_for_sampling_rate(cs_tuners.sampling_rate); if (sample) @@ -132,7 +132,8 @@ static void cs_timer_coordinated(struct cs_cpu_dbs_info_s *dbs_info_local, bool sample = true; /* use leader CPU's dbs_info */ - dbs_info = &per_cpu(cs_cpu_dbs_info, dbs_info_local->cdbs.cpu); + dbs_info = &per_cpu(cs_cpu_dbs_info, + dbs_info_local->cdbs.cur_policy->cpu); mutex_lock(&dbs_info->cdbs.timer_mutex); time_now = ktime_get(); -- cgit v1.2.3