diff options
Diffstat (limited to 'drivers/cpufreq/cpufreq_userspace.c')
| -rw-r--r-- | drivers/cpufreq/cpufreq_userspace.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/cpufreq/cpufreq_userspace.c b/drivers/cpufreq/cpufreq_userspace.c index 44ae5e5b94cf..a06c204589cd 100644 --- a/drivers/cpufreq/cpufreq_userspace.c +++ b/drivers/cpufreq/cpufreq_userspace.c | |||
| @@ -18,6 +18,7 @@ | |||
| 18 | #include <linux/spinlock.h> | 18 | #include <linux/spinlock.h> |
| 19 | #include <linux/interrupt.h> | 19 | #include <linux/interrupt.h> |
| 20 | #include <linux/cpufreq.h> | 20 | #include <linux/cpufreq.h> |
| 21 | #include <linux/cpu.h> | ||
| 21 | #include <linux/types.h> | 22 | #include <linux/types.h> |
| 22 | #include <linux/fs.h> | 23 | #include <linux/fs.h> |
| 23 | #include <linux/sysfs.h> | 24 | #include <linux/sysfs.h> |
| @@ -70,6 +71,7 @@ static int cpufreq_set(unsigned int freq, struct cpufreq_policy *policy) | |||
| 70 | 71 | ||
| 71 | dprintk("cpufreq_set for cpu %u, freq %u kHz\n", policy->cpu, freq); | 72 | dprintk("cpufreq_set for cpu %u, freq %u kHz\n", policy->cpu, freq); |
| 72 | 73 | ||
| 74 | lock_cpu_hotplug(); | ||
| 73 | mutex_lock(&userspace_mutex); | 75 | mutex_lock(&userspace_mutex); |
| 74 | if (!cpu_is_managed[policy->cpu]) | 76 | if (!cpu_is_managed[policy->cpu]) |
| 75 | goto err; | 77 | goto err; |
| @@ -92,6 +94,7 @@ static int cpufreq_set(unsigned int freq, struct cpufreq_policy *policy) | |||
| 92 | 94 | ||
| 93 | err: | 95 | err: |
| 94 | mutex_unlock(&userspace_mutex); | 96 | mutex_unlock(&userspace_mutex); |
| 97 | unlock_cpu_hotplug(); | ||
| 95 | return ret; | 98 | return ret; |
| 96 | } | 99 | } |
| 97 | 100 | ||
