patch-2.4.26 linux-2.4.26/include/asm-x86_64/smp.h

Next file: linux-2.4.26/include/asm-x86_64/uaccess.h
Previous file: linux-2.4.26/include/asm-x86_64/scatterlist.h
Back to the patch index
Back to the overall index

diff -urN linux-2.4.25/include/asm-x86_64/smp.h linux-2.4.26/include/asm-x86_64/smp.h
@@ -36,6 +36,9 @@
 extern unsigned long cpu_online_map;
 extern volatile unsigned long smp_invalidate_needed;
 extern int pic_mode;
+extern int smp_num_siblings;
+extern int cpu_sibling_map[];
+
 extern void smp_flush_tlb(void);
 extern void smp_message_irq(int cpl, void *dev_id, struct pt_regs *regs);
 extern void smp_send_reschedule(int cpu);
@@ -89,8 +92,8 @@
 	return GET_APIC_ID(*(unsigned *)(APIC_BASE+APIC_ID));
 }
 
-/* Assume apicid == cpuid */
-#define safe_smp_processor_id() (cpuid_ebx(1) >> 24) 
+extern int apic_disabled;
+#define safe_smp_processor_id() (apic_disabled ? 0 : x86_apicid_to_cpu[hard_smp_processor_id()])
 
 #endif /* !ASSEMBLY */
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)