summaryrefslogtreecommitdiffstats
path: root/arch/i386
diff options
context:
space:
mode:
authorH. Peter Anvin2007-05-09 09:02:00 +0200
committerLinus Torvalds2007-05-09 21:49:33 +0200
commit21c42bd8db2acd7c884d132efbf7aee9ca970b06 (patch)
tree1ebbed858d9aaca784ff5b8bdf2fa30c27dc6738 /arch/i386
parentmd: improve partition detection in md array (diff)
downloadkernel-qcow2-linux-21c42bd8db2acd7c884d132efbf7aee9ca970b06.tar.gz
kernel-qcow2-linux-21c42bd8db2acd7c884d132efbf7aee9ca970b06.tar.xz
kernel-qcow2-linux-21c42bd8db2acd7c884d132efbf7aee9ca970b06.zip
i386: cpu/transmeta.c: fix definition of USER686
The definition of USER686 is supposed to be a mask of feature bits, not an OR of feature numbers! It happened to work anyway on the only processor affected, simply by pure coincidence. Fix. Signed-off-by: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/i386')
-rw-r--r--arch/i386/kernel/cpu/transmeta.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/i386/kernel/cpu/transmeta.c b/arch/i386/kernel/cpu/transmeta.c
index 6471a5a13202..200fb3f9ebfb 100644
--- a/arch/i386/kernel/cpu/transmeta.c
+++ b/arch/i386/kernel/cpu/transmeta.c
@@ -77,8 +77,10 @@ static void __cpuinit init_transmeta(struct cpuinfo_x86 *c)
set_bit(X86_FEATURE_CONSTANT_TSC, c->x86_capability);
/* If we can run i686 user-space code, call us an i686 */
-#define USER686 (X86_FEATURE_TSC|X86_FEATURE_CX8|X86_FEATURE_CMOV)
- if ( c->x86 == 5 && (c->x86_capability[0] & USER686) == USER686 )
+#define USER686 ((1 << X86_FEATURE_TSC)|\
+ (1 << X86_FEATURE_CX8)|\
+ (1 << X86_FEATURE_CMOV))
+ if (c->x86 == 5 && (c->x86_capability[0] & USER686) == USER686)
c->x86 = 6;
#ifdef CONFIG_SYSCTL