On 07-02-16, 21:15, Viresh Kumar wrote: > 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.
Well no, things have changed now a bit with your recent changes and so this wouldn't be an issue here. Sorry for the noise. -- viresh