]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] i386: fix incorrect FP signal code
authorChuck Ebbert <76306.1226@compuserve.com>
Wed, 24 Aug 2005 01:36:40 +0000 (21:36 -0400)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 24 Aug 2005 02:52:37 +0000 (19:52 -0700)
commitd5814e450febc381064d51de8dd41743f6ab4607
tree874a99ec05afb39419f1e4ac0f90cf7c6a70e1fc
parent318e6ed56460dfc7a6965ce77d863d5d1d951d9b
[PATCH] i386: fix incorrect FP signal code

i386 floating-point exception handling has a bug that can cause error
code 0 to be sent instead of the proper code during signal delivery.

This is caused by unconditionally checking the IS and c1 bits from the
FPU status word when they are not always relevant.  The IS bit tells
whether an exception is a stack fault and is only relevant when the
exception is IE (invalid operation.) The C1 bit determines whether a
stack fault is overflow or underflow and is only relevant when IS and IE
are set.

Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/i386/kernel/traps.c