signal/alpha: Document a conflict with SI_USER for SIGFPE
Setting si_code to 0 is the same as setting si_code to SI_USER. This is the same si_code as SI_USER. Posix and common sense requires that SI_USER not be a signal specific si_code. As such this use of 0 for the si_code is a pretty horribly broken ABI. Cc: Helge Deller <deller@gmx.de> Cc: Richard Henderson <rth@twiddle.net> Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru> Cc: Matt Turner <mattst88@gmail.com> Cc: linux-alpha@vger.kernel.org History Tree: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git Ref: 0a635c7a84cf ("Fill in siginfo_t.") Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
This commit is contained in:
parent
60cc43fc88
commit
5278c0e814
|
@ -872,7 +872,7 @@ SYSCALL_DEFINE5(osf_setsysinfo, unsigned long, op, void __user *, buffer,
|
||||||
fex = (exc >> IEEE_STATUS_TO_EXCSUM_SHIFT) & swcr;
|
fex = (exc >> IEEE_STATUS_TO_EXCSUM_SHIFT) & swcr;
|
||||||
if (fex) {
|
if (fex) {
|
||||||
siginfo_t info;
|
siginfo_t info;
|
||||||
int si_code = 0;
|
int si_code = FPE_FIXME;
|
||||||
|
|
||||||
if (fex & IEEE_TRAP_ENABLE_DNO) si_code = FPE_FLTUND;
|
if (fex & IEEE_TRAP_ENABLE_DNO) si_code = FPE_FLTUND;
|
||||||
if (fex & IEEE_TRAP_ENABLE_INE) si_code = FPE_FLTRES;
|
if (fex & IEEE_TRAP_ENABLE_INE) si_code = FPE_FLTRES;
|
||||||
|
|
Loading…
Reference in New Issue