the bug got introduced by .112 and will only occur on P5 SMP machines.
By changing the order of smp_init() and check_bugs(), the idt got locked
down read only on P5 systems to workaround the F00F bug. But this
gives an oops, when smp_init() initializes the io-apic interrupt table.
Below a probably wrongm, but working fix.
Thomas.
Index: main.c
===================================================================
RCS file: /usr/src/cvs/linux/init/main.c,v
retrieving revision 1.1.1.68
diff -u -r1.1.1.68 main.c
--- main.c 1998/08/02 10:01:49 1.1.1.68
+++ main.c 1998/08/02 13:28:54
@@ -1123,11 +1123,11 @@
dquot_init_hash();
#endif
printk("POSIX conformance testing by UNIFIX\n");
- check_bugs();
#ifdef __SMP__
smp_init();
#endif
+ check_bugs();
#if defined(CONFIG_MTRR) /* Do this after SMP initialization */
/*
-- See, you not only have to be a good coder to create a system like Linux, you have to be a sneaky bastard too ;-) [Linus Torvalds in <4rikft$7g5@linux.cs.Helsinki.FI>]- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html