Thread (8 messages) 8 messages, 3 authors, 2021-01-08

Re: [PATCH v3 3/4] x86/signal: Prevent an alternate stack overflow before a signal delivery

From: Jann Horn <jannh@google.com>
Date: 2020-12-23 06:56:49
Also in: linux-arch, lkml

On Wed, Dec 23, 2020 at 2:57 AM Chang S. Bae [off-list ref] wrote:
The kernel pushes data on the userspace stack when entering a signal. If
using a sigaltstack(), the kernel precisely knows the user stack size.

When the kernel knows that the user stack is too small, avoid the overflow
and do an immediate SIGSEGV instead.

This overflow is known to occur on systems with large XSAVE state. The
effort to increase the size typically used for altstacks reduces the
frequency of these overflows, but this approach is still useful for legacy
binaries.

Suggested-by: Jann Horn <jannh@google.com>
Signed-off-by: Chang S. Bae <redacted>
Reviewed-by: Len Brown <redacted>
Cc: Jann Horn <jannh@google.com>
Cc: x86@kernel.org
Cc: linux-kernel@vger.kernel.org
Reviewed-by: Jann Horn <jannh@google.com>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help