[PATCH] Fix x86-64 properly with MSI & Suresh's change

From: Andi Kleen
Date: Mon Sep 27 2004 - 05:43:39 EST



Together with Suresh's recent LH workaround: this patch makes x86-64
compile again with MSI on. i386 uses an CPU number, x86-64
an CPU mask for MSI_TARGET_CPUS and that didn't work very well.

I must admit I don't fully understand how MSI irq affinity
is supposed to work (why do you always redirect to the current CPU?),
but this matches i386 which is presumably the best tested MSI
platform.

Signed-off-by: Andi Kleen <ak@xxxxxxx>

diff -u linux/include/asm-x86_64/msi.h-o linux/include/asm-x86_64/msi.h
--- linux/include/asm-x86_64/msi.h-o 2004-09-24 13:04:06.000000000 +0200
+++ linux/include/asm-x86_64/msi.h 2004-09-27 12:19:56.000000000 +0200
@@ -7,10 +7,11 @@
#define ASM_MSI_H

#include <asm/desc.h>
+#include <asm/smp.h>

#define LAST_DEVICE_VECTOR 232
#define MSI_DEST_MODE MSI_LOGICAL_MODE
#define MSI_TARGET_CPU_SHIFT 12
-#define MSI_TARGET_CPU TARGET_CPUS
+#define MSI_TARGET_CPU hard_smp_processor_id()

#endif /* ASM_MSI_H */


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/