Re: [RFC][PATCH 07/11] signal: Deliver group signals via PIDTYPE_TGID not PIDTYPE_PID
From: Eric W. Biederman
Date: Fri Jul 20 2018 - 19:27:51 EST
Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> writes:
> On Mon, Jul 16, 2018 at 7:50 AM Eric W. Biederman <ebiederm@xxxxxxxxxxxx> wrote:
>>
>> In practice since glibc does not make thread id's available I don't
>> expect anyone relies on this behavior. Since no one relies on it we
>> can change it without creating a regression.
>
> Actually, there's a really obvious case where this simply isn't true.
>
> Just imagine you're a MIS person or a developer, doing "ps -eLf" to
> see what's going on, and want to kill one thread. Either because you
> see that one thread using all CPU, or because you are the developer
> and you know what's up.
>
> Those thread ID's are exported trivially.
True. Which makes all of this shell script visible. So someone may
have done something with this functionality.
I have just gone through all of my patches and updated them to ensure
that everything has the same behavior when selecting processes as it does
today. So this will not be an issue with the next version this patch series.
I am going to come back to this as there are some really nasty corner
cases in the current kernel. Primarily that we can send signals through
a zombie thread group leader and it can have unchangable credentials
completely out of sync with the credentials on the other threads.
Eric