[patch 2.6.13] i386: Ignore masked FPU exceptions

From: Chuck Ebbert
Date: Tue Sep 13 2005 - 04:05:07 EST


I think ignoring masked FPU exceptions on i386 is the right thing to do.
Although there is no documentation available for Cyrix MII, I did find
erratum F-7 for Winchip C6, "FPU instruction may result in spurious
exception under certain conditions" which seems to indicate that this can
happen.

Ondrej, this patch on top of 2.6.13 should fix your Cyrix problems.
Can you confirm? There was another bug which was already fixed,
so this should be all that's needed now.

Signed-off-by: Chuck Ebbert <76306.1226@xxxxxxxxxxxxxx>

arch/i386/kernel/traps.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)

--- 2.6.13a.orig/arch/i386/kernel/traps.c
+++ 2.6.13a/arch/i386/kernel/traps.c
@@ -804,8 +804,9 @@ void math_error(void __user *eip)
cwd = get_fpu_cwd(task);
swd = get_fpu_swd(task);
switch (swd & ~cwd & 0x3f) {
- case 0x000:
- default:
+ case 0x000: /* No unmasked exception */
+ return;
+ default: /* Multiple exceptions */
break;
case 0x001: /* Invalid Op */
/*
__
Chuck
-
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/