From: Ilya Leoshkevich Date: Tue, 1 Jun 2021 14:55:59 +0000 (+0200) Subject: linux-user: Let sigaction query SIGKILL/SIGSTOP X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=ee3500d33a7431fbcc357a35ce1a46fcf13128cc;p=qemu.git linux-user: Let sigaction query SIGKILL/SIGSTOP The kernel allows doing this, so let's allow this in qemu as well. Valgrind relies on this. Signed-off-by: Ilya Leoshkevich Reviewed-by: Laurent Vivier Message-Id: <20210601145600.3131040-2-iii@linux.ibm.com> Signed-off-by: Laurent Vivier --- diff --git a/linux-user/signal.c b/linux-user/signal.c index 0f19c59dee..a8faea6f09 100644 --- a/linux-user/signal.c +++ b/linux-user/signal.c @@ -853,7 +853,11 @@ int do_sigaction(int sig, const struct target_sigaction *act, trace_signal_do_sigaction_guest(sig, TARGET_NSIG); - if (sig < 1 || sig > TARGET_NSIG || sig == TARGET_SIGKILL || sig == TARGET_SIGSTOP) { + if (sig < 1 || sig > TARGET_NSIG) { + return -TARGET_EINVAL; + } + + if (act && (sig == TARGET_SIGKILL || sig == TARGET_SIGSTOP)) { return -TARGET_EINVAL; }