| .. | .. |
|---|
| 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; |
|---|