.. | .. |
---|
454 | 454 | policy->cur, |
---|
455 | 455 | policy->cpuinfo.max_freq); |
---|
456 | 456 | |
---|
| 457 | + spin_lock(&policy->transition_lock); |
---|
457 | 458 | policy->transition_ongoing = false; |
---|
458 | 459 | policy->transition_task = NULL; |
---|
| 460 | + spin_unlock(&policy->transition_lock); |
---|
459 | 461 | |
---|
460 | 462 | wake_up(&policy->transition_wait); |
---|
461 | 463 | } |
---|
.. | .. |
---|
1226 | 1228 | if (!zalloc_cpumask_var(&policy->real_cpus, GFP_KERNEL)) |
---|
1227 | 1229 | goto err_free_rcpumask; |
---|
1228 | 1230 | |
---|
| 1231 | + init_completion(&policy->kobj_unregister); |
---|
1229 | 1232 | ret = kobject_init_and_add(&policy->kobj, &ktype_cpufreq, |
---|
1230 | 1233 | cpufreq_global_kobject, "policy%u", cpu); |
---|
1231 | 1234 | if (ret) { |
---|
.. | .. |
---|
1264 | 1267 | init_rwsem(&policy->rwsem); |
---|
1265 | 1268 | spin_lock_init(&policy->transition_lock); |
---|
1266 | 1269 | init_waitqueue_head(&policy->transition_wait); |
---|
1267 | | - init_completion(&policy->kobj_unregister); |
---|
1268 | 1270 | INIT_WORK(&policy->update, handle_update); |
---|
1269 | 1271 | |
---|
1270 | 1272 | policy->cpu = cpu; |
---|