diff options
| author | Steve French <sfrench@us.ibm.com> | 2006-03-20 11:58:09 -0500 |
|---|---|---|
| committer | Steve French <sfrench@us.ibm.com> | 2006-03-20 11:58:09 -0500 |
| commit | fd4a0b92db6a57cba8d03efbe1cebf91f9124ce0 (patch) | |
| tree | 5886a08bfa1132058b06074f4666a36dc5ddd2a1 /arch/i386/kernel/smpboot.c | |
| parent | 88274815f7477dc7550439413ab87c5ce4c5a623 (diff) | |
| parent | 7705a8792b0fc82fd7d4dd923724606bbfd9fb20 (diff) | |
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'arch/i386/kernel/smpboot.c')
| -rw-r--r-- | arch/i386/kernel/smpboot.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/i386/kernel/smpboot.c b/arch/i386/kernel/smpboot.c index eba7f53f8b4a..7007e1783797 100644 --- a/arch/i386/kernel/smpboot.c +++ b/arch/i386/kernel/smpboot.c | |||
| @@ -1029,6 +1029,16 @@ int __devinit smp_prepare_cpu(int cpu) | |||
| 1029 | int apicid, ret; | 1029 | int apicid, ret; |
| 1030 | 1030 | ||
| 1031 | lock_cpu_hotplug(); | 1031 | lock_cpu_hotplug(); |
| 1032 | |||
| 1033 | /* | ||
| 1034 | * On x86, CPU0 is never offlined. Trying to bring up an | ||
| 1035 | * already-booted CPU will hang. So check for that case. | ||
| 1036 | */ | ||
| 1037 | if (cpu_online(cpu)) { | ||
| 1038 | ret = -EINVAL; | ||
| 1039 | goto exit; | ||
| 1040 | } | ||
| 1041 | |||
| 1032 | apicid = x86_cpu_to_apicid[cpu]; | 1042 | apicid = x86_cpu_to_apicid[cpu]; |
| 1033 | if (apicid == BAD_APICID) { | 1043 | if (apicid == BAD_APICID) { |
| 1034 | ret = -ENODEV; | 1044 | ret = -ENODEV; |
