Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

MIPS: Delete definition of SA_RESTORER.

SA_RESTORER used to be defined as 0x04000000 but only the O32 ABI ever
supported its use and no libc was using it, so the entire sa-restorer
functionality was removed with lmo commit 39bffc12c3580ab [Zap sa_restorer.]
for 2.5.48 retaining only the SA_RESTORER definition as a reminder to avoid
accidental reuse of the mask bit.

Upstream cdef9602fbf1871a43f0f1b5cea10dd0f275167d [signal: always clear
sa_restorer on execve] adds code that assumes sa_sigaction has an
sa_restorer field, if SA_RESTORER is defined which would break MIPS.
So remove the SA_RESTORER definition before the v3.8.4 merge.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
(cherry picked from commit 17da8d63add23830892ac4dc2cbb3b5d4ffb79a8)

+6 -2
+6 -2
arch/mips/include/uapi/asm/signal.h
··· 72 72 * 73 73 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single 74 74 * Unix names RESETHAND and NODEFER respectively. 75 + * 76 + * SA_RESTORER used to be defined as 0x04000000 but only the O32 ABI ever 77 + * supported its use and no libc was using it, so the entire sa-restorer 78 + * functionality was removed with lmo commit 39bffc12c3580ab for 2.5.48 79 + * retaining only the SA_RESTORER definition as a reminder to avoid 80 + * accidental reuse of the mask bit. 75 81 */ 76 82 #define SA_ONSTACK 0x08000000 77 83 #define SA_RESETHAND 0x80000000 ··· 89 83 90 84 #define SA_NOMASK SA_NODEFER 91 85 #define SA_ONESHOT SA_RESETHAND 92 - 93 - #define SA_RESTORER 0x04000000 /* Only for o32 */ 94 86 95 87 #define MINSIGSTKSZ 2048 96 88 #define SIGSTKSZ 8192