[PATCH 0/2] sigaltstack: return only one flag

From: Stas Sergeev
Date: Wed Jan 26 2022 - 14:23:18 EST


Currently sigaltstack() can return multiple flags, for example
SS_DISABLE|SS_AUTODISARM. This confuses libraries (including asan
runtime) and contradicts the man page.

Patch 1 fixes this problem by ignoring any flag passed with SS_DISABLE.
Patch 2 adds a test-case for that scenario.

Signed-off-by: Stas Sergeev <stsp2@xxxxxxxxx>
CC: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
CC: Kees Cook <keescook@xxxxxxxxxxxx>
CC: Jens Axboe <axboe@xxxxxxxxx>
CC: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
CC: Marco Elver <elver@xxxxxxxxxx>
CC: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
CC: Alexey Gladkov <legion@xxxxxxxxxx>
CC: Andrew Lutomirski <luto@xxxxxxx>
CC: Shuah Khan <shuah@xxxxxxxxxx>
CC: "Chang S. Bae" <chang.seok.bae@xxxxxxxxx>
CC: Borislav Petkov <bp@xxxxxxx>
CC: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
CC: Len Brown <len.brown@xxxxxxxxx>
CC: linux-kselftest@xxxxxxxxxxxxxxx
CC: linux-kernel@xxxxxxxxxxxxxxx

Stas Sergeev (2):
sigaltstack: ignore flags if SS_DISABLE is set
selftests: sigaltstack: add new SS_DISABLE test

kernel/signal.c | 1 +
tools/testing/selftests/sigaltstack/sas.c | 48 ++++++++++++-----------
2 files changed, 26 insertions(+), 23 deletions(-)

--
2.34.1