[PATCH] Cleanup SEP errata workaround.

From: davej
Date: Mon Sep 29 2003 - 13:34:13 EST


This looks a little simpler, and has the same effect.

diff -urpN --exclude-from=/home/davej/.exclude bk-linus/arch/i386/kernel/cpu/intel.c linux-2.5/arch/i386/kernel/cpu/intel.c
--- bk-linus/arch/i386/kernel/cpu/intel.c 2003-09-10 20:35:24.000000000 +0100
+++ linux-2.5/arch/i386/kernel/cpu/intel.c 2003-09-24 01:34:29.000000000 +0100
@@ -238,12 +269,9 @@ static void __init init_intel(struct cpu
}

/* SEP CPUID bug: Pentium Pro reports SEP but doesn't have it until model 3 mask 3 */
- if ( c->x86 == 6) {
- unsigned model_mask = (c->x86_model << 8) + c->x86_mask;
- if (model_mask < 0x0303)
- clear_bit(X86_FEATURE_SEP, c->x86_capability);
- }
-
+ if ((c->x86<<8 | c->x86_model<<4 | c->x86_mask) < 0x633)
+ clear_bit(X86_FEATURE_SEP, c->x86_capability);
+
/* Names for the Pentium II/Celeron processors
detectable only by also checking the cache size.
Dixon is NOT a Celeron. */
-
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/