On 07-02-16, 16:24, Rafael J. Wysocki wrote:
>  static int cpufreq_governor_exit(struct cpufreq_policy *policy)
>  {
>       struct dbs_governor *gov = dbs_governor_of(policy);
> -     struct dbs_data *dbs_data = policy->governor_data;
> -     struct cpu_dbs_info *cdbs = gov->get_cpu_cdbs(policy->cpu);
> +     struct policy_dbs_info *policy_dbs = policy->governor_data;
> +     struct dbs_data *dbs_data = policy_dbs->dbs_data;
>  
>       /* State should be equivalent to INIT */
> -     if (!cdbs->policy_dbs || cdbs->policy_dbs->policy)
> +     if (policy_dbs->policy)
>               return -EBUSY;

We can crash here if policy_dbs is NULL, which can happen if EXIT is called
twice (due to the lock-dropping thing in cpufreq-core). So we really need to
keep these checks for now atleast.

-- 
viresh

Reply via email to