Re: [PATCH v3] do_wait: make PIDTYPE_PID case O(1) instead of O(n)

From: Jim Newsome
Date: Thu Mar 11 2021 - 11:26:53 EST



On 3/11/21 09:15, Oleg Nesterov wrote:
> On 03/10, Jim Newsome wrote:
>> On 3/10/21 16:40, Eric W. Biederman wrote:
>>
>>>> +static int do_wait_pid(struct wait_opts *wo)
>>>> +{
>>>> + struct task_struct *target = pid_task(wo->wo_pid, PIDTYPE_PID);
>>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>> This is subtle change in behavior.
>>>
>>> Today on the task->children list we only place thread group leaders.
>> Shouldn't we allow waiting on clone children if __WALL or __WCLONE is set?
> Don't confuse clone child with child's sub-thread.

Oops! Thanks; got it. v4 coming shortly