On Sat, Feb 02, 2019 at 09:49:38PM -1000, Jack Andersen wrote:
> The patch titled
> `signal: Never allocate siginfo for SIGKILL or SIGSTOP`
> created a regression for users of PTRACE_GETSIGINFO needing to
> discern signals that were raised via the tgkill syscall.
> 
> A notable user of this tgkill+ptrace combination is lldb while
> debugging a multithreaded program. Without the ability to detect a
> SIGSTOP originating from tgkill, lldb does not have a way to
> synchronize on a per-thread basis and falls back to SIGSTOP-ing the
> entire process.
> 
> This patch allocates the siginfo as it did previously whenever the
> SI_TKILL code is present.
> 
> Signed-off-by: Jack Andersen <[email protected]>

The  commit you're trying to fix has been discussed before wrt to
seccomp tests:

commit 2bd61abead58c82714a1f6fa6beb0fd0df6a6d13
Author: Kees Cook <[email protected]>
Date:   Thu Dec 6 15:50:38 2018 -0800

    selftests/seccomp: Remove SIGSTOP si_pid check

    Commit f149b3155744 ("signal: Never allocate siginfo for SIGKILL or 
SIGSTOP")
    means that the seccomp selftest cannot check si_pid under SIGSTOP anymore.
    Since it's believed[1] there are no other userspace things depending on the
    old behavior, this removes the behavioral check in the selftest, since it's
    more a "extra" sanity check (which turns out, maybe, not to have been
    useful to test).

    [1] 
https://lkml.kernel.org/r/cagxu5jjazaozp1qfz66tyrtbuywqb+un2soa1vlhpccoiyv...@mail.gmail.com

    Reported-by: Tycho Andersen <[email protected]>
    Suggested-by: Eric W. Biederman <[email protected]>
    Signed-off-by: Kees Cook <[email protected]>
    Signed-off-by: Shuah Khan <[email protected]>

Ccing Kees on this. Seems that this commit might be worth given that
there's some parts of userspace relying on it and not just internal
kernel tests.

Christian

Reply via email to