patch-2.4.27 linux-2.4.27/include/asm-i386/smpboot.h
Next file: linux-2.4.27/include/asm-ia64/acpi.h
Previous file: linux-2.4.27/include/asm-i386/i387.h
Back to the patch index
Back to the overall index
- Lines: 24
- Date:
2004-08-07 16:26:06.154408413 -0700
- Orig file:
linux-2.4.26/include/asm-i386/smpboot.h
- Orig date:
2003-08-25 04:44:43.000000000 -0700
diff -urN linux-2.4.26/include/asm-i386/smpboot.h linux-2.4.27/include/asm-i386/smpboot.h
@@ -73,11 +73,18 @@
*/
static inline int cpu_present_to_apicid(int mps_cpu)
{
- if (clustered_apic_mode == CLUSTERED_APIC_XAPIC)
- return raw_phys_apicid[mps_cpu];
- if(clustered_apic_mode == CLUSTERED_APIC_NUMAQ)
- return (mps_cpu/4)*16 + (1<<(mps_cpu%4));
- return mps_cpu;
+ switch (clustered_apic_mode) {
+ case CLUSTERED_APIC_XAPIC:
+ if (mps_cpu >= NR_CPUS)
+ return BAD_APICID;
+ else
+ return raw_phys_apicid[mps_cpu];
+ case CLUSTERED_APIC_NUMAQ:
+ return (mps_cpu & ~0x3) << 2 | 1 << (mps_cpu & 0x3);
+ case CLUSTERED_APIC_NONE:
+ default:
+ return mps_cpu;
+ }
}
static inline unsigned long apicid_to_phys_cpu_present(int apicid)
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)