diff options
| -rw-r--r-- | drivers/cpufreq/cpufreq.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index ca69f42b8e1e..2b181f75da15 100644 --- a/drivers/cpufreq/cpufreq.c +++ b/drivers/cpufreq/cpufreq.c | |||
| @@ -1392,9 +1392,10 @@ static int __cpufreq_remove_dev_finish(struct device *dev, | |||
| 1392 | unsigned long flags; | 1392 | unsigned long flags; |
| 1393 | struct cpufreq_policy *policy; | 1393 | struct cpufreq_policy *policy; |
| 1394 | 1394 | ||
| 1395 | read_lock_irqsave(&cpufreq_driver_lock, flags); | 1395 | write_lock_irqsave(&cpufreq_driver_lock, flags); |
| 1396 | policy = per_cpu(cpufreq_cpu_data, cpu); | 1396 | policy = per_cpu(cpufreq_cpu_data, cpu); |
| 1397 | read_unlock_irqrestore(&cpufreq_driver_lock, flags); | 1397 | per_cpu(cpufreq_cpu_data, cpu) = NULL; |
| 1398 | write_unlock_irqrestore(&cpufreq_driver_lock, flags); | ||
| 1398 | 1399 | ||
| 1399 | if (!policy) { | 1400 | if (!policy) { |
| 1400 | pr_debug("%s: No cpu_data found\n", __func__); | 1401 | pr_debug("%s: No cpu_data found\n", __func__); |
| @@ -1449,7 +1450,6 @@ static int __cpufreq_remove_dev_finish(struct device *dev, | |||
| 1449 | } | 1450 | } |
| 1450 | } | 1451 | } |
| 1451 | 1452 | ||
| 1452 | per_cpu(cpufreq_cpu_data, cpu) = NULL; | ||
| 1453 | return 0; | 1453 | return 0; |
| 1454 | } | 1454 | } |
| 1455 | 1455 | ||
