Skip to contentSkip to conversation

skip sync_arb_IDs on P4/Xeon

PATCH New Martin Wilck 1 participant 1 message Oct 4, 2004

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 skip sync_arb_IDs on P4/Xeon

Hi,

I recently came across an Intel statement saying that the "INIT Level deassert" IPI used by sync_arb_IDs() (arch/i386/kernel/apic.c) should not be used on P4 and Xeon which don't have APIC bus arbitration anyway.

See Intel IA32 architecture software developers manual vol. 3, 8.6.1 (p.8-23), 8.7 (p. 8.31).

The patch below skips the unsupported IPI on P4/Xeon.

The same thing should probably be done for x86_64.

Regards,
Martin

Signature · 4 lines
Martin Wilck                Phone: +49 5251 8 15113
Fujitsu Siemens Computers   Fax:   +49 5251 8 20409
Heinz-Nixdorf-Ring 1        mailto:[email protected]
D-33106 Paderborn           http://www.fujitsu-siemens.com/primergy
i386/kernel/apic.c renamed from i386/kernel/apic.c.orig +3 -0
@@ -269,6 +269,9 @@ int __init verify_local_APIC(void)
 
 void __init sync_Arb_IDs(void)
 {
+	/* Unsupported on P4 - see Intel Dev. Manual Vol. 3, Ch. 8.6.1 */
+	if (boot_cpu_data.x86 == 15)
+		return;
 	/*
 	 * Wait for idle.
 	 */