From: Linus Torvalds
Date: Tue Oct 03 2017 - 13:03:00 EST

On Tue, Oct 3, 2017 at 9:36 AM, Eric W. Biederman <ebiederm@xxxxxxxxxxxx> wrote:
> *Scratches head*
> pdeath_signal is cleared during exec if bprm->cap_elevated.

It's not cleared if we are *releasing* capabilities, which is exactly
what might cause a "we can no longer send a signal"

> is_setid is set if the uid != eid or gid != egid.

Again, that may be exactly what changes - the original process may
have uid != euid, and now we're going from an "we still had a root
uid/suid" to "dropping everything to euid".

IOW, we're _dropping_ capabilities, not adding them. Maybe we don't
want to allow signaling the original parent any more.

That said, as mentioned, I actually don't think it's a real problem.
The real problem is entirely conceptual: yet more complexity in an
area that we've already had problems in before.