diff options
Diffstat (limited to '')
| -rw-r--r-- | drivers/cpufreq/cpufreq_governor.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c index ba43991ba98a..e1c6433b16e0 100644 --- a/drivers/cpufreq/cpufreq_governor.c +++ b/drivers/cpufreq/cpufreq_governor.c @@ -366,6 +366,11 @@ int cpufreq_governor_dbs(struct cpufreq_policy *policy,  		break;  	case CPUFREQ_GOV_LIMITS: +		mutex_lock(&dbs_data->mutex); +		if (!cpu_cdbs->cur_policy) { +			mutex_unlock(&dbs_data->mutex); +			break; +		}  		mutex_lock(&cpu_cdbs->timer_mutex);  		if (policy->max < cpu_cdbs->cur_policy->cur)  			__cpufreq_driver_target(cpu_cdbs->cur_policy, @@ -375,6 +380,7 @@ int cpufreq_governor_dbs(struct cpufreq_policy *policy,  					policy->min, CPUFREQ_RELATION_L);  		dbs_check_cpu(dbs_data, cpu);  		mutex_unlock(&cpu_cdbs->timer_mutex); +		mutex_unlock(&dbs_data->mutex);  		break;  	}  	return 0;  | 
