提交 2f82ec19 编写于 作者: N Nicholas Piggin 提交者: Michael Ellerman

powerpc/64: Bump SIGSTKSZ and MINSIGSTKSZ

The sad tale of SIGSTKSZ and MINSIGSTKSZ is documented in glibc.git
commit f7c399cff5bd ("PowerPC SIGSTKSZ"), which explains why glibc
does not use the kernel defines for these constants.

Since then in fact there has been a further expansion of the signal
stack frame size on little-endian with linux commit
573ebfa6 ("powerpc: Increase stack redzone for 64-bit userspace to
512 bytes"), which has caused it to exceed even the glibc defines.

See kernel commit 63dee5df ("powerpc: Allow 4224 bytes of stack
expansion for the signal frame") for more details of the history of the
expansion.

Increase MINSIGSTKSZ to 8192 which is double the current glibc value and
fits the current stack frame with room to grow. SIGSTKSZ is set to 4x
the minimum as convention.

glibc will have to be updated as well.
Reviewed-by: NTulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
Signed-off-by: NNicholas Piggin <npiggin@gmail.com>
Signed-off-by: NMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220307182734.289289-1-npiggin@gmail.com
上级 4406b122
...@@ -62,8 +62,13 @@ typedef struct { ...@@ -62,8 +62,13 @@ typedef struct {
#define SA_RESTORER 0x04000000U #define SA_RESTORER 0x04000000U
#ifdef __powerpc64__
#define MINSIGSTKSZ 8192
#define SIGSTKSZ 32768
#else
#define MINSIGSTKSZ 2048 #define MINSIGSTKSZ 2048
#define SIGSTKSZ 8192 #define SIGSTKSZ 8192
#endif
#include <asm-generic/signal-defs.h> #include <asm-generic/signal-defs.h>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册