diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-07-29 05:54:24 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-29 05:54:24 -0400 |
commit | 3825c9e8d01e4310c40a3903a354c433c32a7b6f (patch) | |
tree | 87c94a8076bbb38bd2cf20ab9bc23d6f74f6a0a8 /arch/x86/kernel/microcode.c | |
parent | 5d7b605245b1aa1a9cd6549b1f57d69273eb0c37 (diff) | |
parent | 6e86841d05f371b5b9b86ce76c02aaee83352298 (diff) |
Merge commit 'v2.6.27-rc1' into x86/microcode
Conflicts:
arch/x86/kernel/microcode.c
Manual resolutions:
arch/x86/kernel/microcode_amd.c
arch/x86/kernel/microcode_intel.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/microcode.c')
-rw-r--r-- | arch/x86/kernel/microcode.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/arch/x86/kernel/microcode.c b/arch/x86/kernel/microcode.c index 758b958a6637..28dba1a6e4aa 100644 --- a/arch/x86/kernel/microcode.c +++ b/arch/x86/kernel/microcode.c | |||
@@ -123,7 +123,6 @@ static int do_microcode_update (void) | |||
123 | void *new_mc = NULL; | 123 | void *new_mc = NULL; |
124 | int cpu; | 124 | int cpu; |
125 | cpumask_t old; | 125 | cpumask_t old; |
126 | cpumask_of_cpu_ptr_declare(newmask); | ||
127 | 126 | ||
128 | old = current->cpus_allowed; | 127 | old = current->cpus_allowed; |
129 | 128 | ||
@@ -140,8 +139,7 @@ static int do_microcode_update (void) | |||
140 | 139 | ||
141 | if (!uci->valid) | 140 | if (!uci->valid) |
142 | continue; | 141 | continue; |
143 | cpumask_of_cpu_ptr_next(newmask, cpu); | 142 | set_cpus_allowed_ptr(current, &cpumask_of_cpu(cpu)); |
144 | set_cpus_allowed_ptr(current, newmask); | ||
145 | error = microcode_ops->get_matching_microcode(new_mc, | 143 | error = microcode_ops->get_matching_microcode(new_mc, |
146 | cpu); | 144 | cpu); |
147 | if (error < 0) | 145 | if (error < 0) |
@@ -236,12 +234,11 @@ EXPORT_SYMBOL_GPL(microcode_pdev); | |||
236 | static void microcode_init_cpu(int cpu, int resume) | 234 | static void microcode_init_cpu(int cpu, int resume) |
237 | { | 235 | { |
238 | cpumask_t old; | 236 | cpumask_t old; |
239 | cpumask_of_cpu_ptr(newmask, cpu); | ||
240 | struct ucode_cpu_info *uci = ucode_cpu_info + cpu; | 237 | struct ucode_cpu_info *uci = ucode_cpu_info + cpu; |
241 | 238 | ||
242 | old = current->cpus_allowed; | 239 | old = current->cpus_allowed; |
243 | 240 | ||
244 | set_cpus_allowed_ptr(current, newmask); | 241 | set_cpus_allowed_ptr(current, &cpumask_of_cpu(cpu)); |
245 | mutex_lock(µcode_mutex); | 242 | mutex_lock(µcode_mutex); |
246 | microcode_ops->collect_cpu_info(cpu); | 243 | microcode_ops->collect_cpu_info(cpu); |
247 | if (uci->valid && system_state == SYSTEM_RUNNING && !resume) | 244 | if (uci->valid && system_state == SYSTEM_RUNNING && !resume) |
@@ -263,13 +260,10 @@ static ssize_t reload_store(struct sys_device *dev, | |||
263 | if (end == buf) | 260 | if (end == buf) |
264 | return -EINVAL; | 261 | return -EINVAL; |
265 | if (val == 1) { | 262 | if (val == 1) { |
266 | cpumask_t old; | 263 | cpumask_t old = current->cpus_allowed; |
267 | cpumask_of_cpu_ptr(newmask, cpu); | ||
268 | |||
269 | old = current->cpus_allowed; | ||
270 | 264 | ||
271 | get_online_cpus(); | 265 | get_online_cpus(); |
272 | set_cpus_allowed_ptr(current, newmask); | 266 | set_cpus_allowed_ptr(current, &cpumask_of_cpu(cpu)); |
273 | 267 | ||
274 | mutex_lock(µcode_mutex); | 268 | mutex_lock(µcode_mutex); |
275 | if (uci->valid) | 269 | if (uci->valid) |