Re: [PATCH rc1-mm] de_thread: fix deadlockable process addition

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Oleg Nesterov <[email protected]> writes:

> On 04/09, Oleg Nesterov wrote:
>>
>> proc_task_readdir:
>> 
>> 	first_tid() returns old_leader
>> 
>> 	next_tid()  returns new_leader
>> 	
>> 						de_thread:
>> old_leader->group_leader = new_leader;
>> 
>> 	
>> 	next_rid()  returns old_leader again,
>> 	because it is not thread_group_leader()
>> 	anymore
>
> I think something like this for next_tid() is sufficient:
>
> 	-	if (thread_group_leader(pos))
> 	+	if (pos->pid == pos->tgid)
>
> We can also do the same change in first_tgid().

But the loop will terminate when things settle down,
and we can always use my original test of pos == start->group_leader.

I was worried about the stable kernel case and next_tid was
such a generic name I failed to associate it with /proc.

Short of confusion (and de_thread invariably introduces that)
I don't see anything that the code will actually do wrong.

Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux