diff options
-rw-r--r-- | arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c b/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c index 837c2c4cc203..ecdb682ab516 100644 --- a/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c +++ b/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c | |||
@@ -204,7 +204,13 @@ static void drv_read(struct drv_cmd *cmd) | |||
204 | 204 | ||
205 | static void drv_write(struct drv_cmd *cmd) | 205 | static void drv_write(struct drv_cmd *cmd) |
206 | { | 206 | { |
207 | int this_cpu; | ||
208 | |||
209 | this_cpu = get_cpu(); | ||
210 | if (cpumask_test_cpu(this_cpu, cmd->mask)) | ||
211 | do_drv_write(cmd); | ||
207 | smp_call_function_many(cmd->mask, do_drv_write, cmd, 1); | 212 | smp_call_function_many(cmd->mask, do_drv_write, cmd, 1); |
213 | put_cpu(); | ||
208 | } | 214 | } |
209 | 215 | ||
210 | static u32 get_cur_val(const struct cpumask *mask) | 216 | static u32 get_cur_val(const struct cpumask *mask) |