[SRU][Xenial][PATCH 0/2] arm64: sigaltstack fails with MINSIGSTKSZ for 32-bit processes (LP: #1844155)

Juerg Haefliger juerg.haefliger at canonical.com
Tue Oct 1 17:56:50 UTC 2019


[Impact]

The arm64 kernel allows one to run aarch32 processes on an aarch64 processor, using the standard 32/64-bit syscall compatibility. However this compat layer does not correctly validate the arguments of the sigaltstack syscall which can result in process failures.

[Test Case]

The simple reproducer from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=904385 triggers a memory allocation error with the current Xenial 4.4 kernel.

[Fix]

Backport the following two upstream commits:
24951465cbd2 arm64: compat: Provide definition for COMPAT_SIGMINSTKSZ
22839869f21a signal: Introduce COMPAT_SIGMINSTKSZ for use in compat_sys_sigaltstack

With these two commits, the reproducer no longer fails.

[Regression Potential]

Low. The modifications are trivial and the two patches have been in upstream for quite a while.

Will Deacon (2):
  signal: Introduce COMPAT_SIGMINSTKSZ for use in compat_sys_sigaltstack
  arm64: compat: Provide definition for COMPAT_SIGMINSTKSZ

 arch/arm64/include/asm/compat.h |  1 +
 include/linux/compat.h          |  3 +++
 kernel/signal.c                 | 14 +++++++++-----
 3 files changed, 13 insertions(+), 5 deletions(-)

-- 
2.20.1




More information about the kernel-team mailing list