diff options
Diffstat (limited to 'arch/x86/kernel/reboot.c')
| -rw-r--r-- | arch/x86/kernel/reboot.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c index 06a9f643817e..724adfc63cb9 100644 --- a/arch/x86/kernel/reboot.c +++ b/arch/x86/kernel/reboot.c | |||
| @@ -414,25 +414,20 @@ void native_machine_shutdown(void) | |||
| 414 | 414 | ||
| 415 | /* The boot cpu is always logical cpu 0 */ | 415 | /* The boot cpu is always logical cpu 0 */ |
| 416 | int reboot_cpu_id = 0; | 416 | int reboot_cpu_id = 0; |
| 417 | cpumask_of_cpu_ptr(newmask, reboot_cpu_id); | ||
| 418 | 417 | ||
| 419 | #ifdef CONFIG_X86_32 | 418 | #ifdef CONFIG_X86_32 |
| 420 | /* See if there has been given a command line override */ | 419 | /* See if there has been given a command line override */ |
| 421 | if ((reboot_cpu != -1) && (reboot_cpu < NR_CPUS) && | 420 | if ((reboot_cpu != -1) && (reboot_cpu < NR_CPUS) && |
| 422 | cpu_online(reboot_cpu)) { | 421 | cpu_online(reboot_cpu)) |
| 423 | reboot_cpu_id = reboot_cpu; | 422 | reboot_cpu_id = reboot_cpu; |
| 424 | cpumask_of_cpu_ptr_next(newmask, reboot_cpu_id); | ||
| 425 | } | ||
| 426 | #endif | 423 | #endif |
| 427 | 424 | ||
| 428 | /* Make certain the cpu I'm about to reboot on is online */ | 425 | /* Make certain the cpu I'm about to reboot on is online */ |
| 429 | if (!cpu_online(reboot_cpu_id)) { | 426 | if (!cpu_online(reboot_cpu_id)) |
| 430 | reboot_cpu_id = smp_processor_id(); | 427 | reboot_cpu_id = smp_processor_id(); |
| 431 | cpumask_of_cpu_ptr_next(newmask, reboot_cpu_id); | ||
| 432 | } | ||
| 433 | 428 | ||
| 434 | /* Make certain I only run on the appropriate processor */ | 429 | /* Make certain I only run on the appropriate processor */ |
| 435 | set_cpus_allowed_ptr(current, newmask); | 430 | set_cpus_allowed_ptr(current, &cpumask_of_cpu(reboot_cpu_id)); |
| 436 | 431 | ||
| 437 | /* O.K Now that I'm on the appropriate processor, | 432 | /* O.K Now that I'm on the appropriate processor, |
| 438 | * stop all of the others. | 433 | * stop all of the others. |
