x86: prioritize the FPU traps for the error code
authorH. Peter Anvin <hpa@zytor.com>
Tue, 23 Dec 2008 01:56:05 +0000 (17:56 -0800)
committerH. Peter Anvin <hpa@zytor.com>
Tue, 23 Dec 2008 02:00:18 +0000 (18:00 -0800)
commitadf77bac052bb5bf0722b2ce2af9fefc5b2d2a71
treeaceffee150411ffe1e93b4f78f4660028d44ecd8
parent55dac3a5553b13891f0ae4bbd11920619b5436d4
x86: prioritize the FPU traps for the error code

In the case of multiple FPU errors, prioritize the error codes,
instead of returning __SI_FAULT, which ends up pushing a 0 as the
error code to userspace, a POSIX violation.

For i386, we will simply return if there are no errors at all; for
x86-64 this is probably a "can't happen" (and the code should be
unified), but for this patch, return __SI_FAULT|SI_KERNEL if this ever
happens.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/kernel/traps.c