patch-2.1.27 linux/include/asm-i386/smp.h

Next file: linux/include/asm-i386/string-486.h
Previous file: linux/include/asm-i386/irq.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.26/linux/include/asm-i386/smp.h linux/include/asm-i386/smp.h
@@ -227,10 +227,11 @@
  *	cpu id from the config and set up a fake apic_reg pointer so that before we activate
  *	the apic we get the right answer). Hopefully other processors are more sensible 8)
  */
- 
+
 extern __inline int smp_processor_id(void)
 {
-	return GET_APIC_ID(apic_read(APIC_ID));
+	/* we don't want to mark this access volatile - bad code generation */
+	return GET_APIC_ID(*(unsigned long *)(apic_reg+APIC_ID));
 }
 
 /* These read/change the "processes available" counter in the scheduler. */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov