Re: [PATCH] de_thread: Don't confuse users do_each_thread.

From: Eric W. Biederman
Date: Tue Apr 11 2006 - 02:25:24 EST


Oleg Nesterov <oleg@xxxxxxxxxx> writes:

> On 04/10, Eric W. Biederman wrote:
>>
>> I believe this is 2.6.17 material as the bug is present in
>> 2.6.17-rc1 and the fix is simple.
>>
>> ...
>>
>> + list_del_init(&leader->tasks);
>
> I beleive this is ok for 2.6.17-rc1, but this breaks lockless
> for_each_process/while_each_thread (I am talking about -mm tree).

Agreed.

> Andrew, could you please drop these ones:
>
> task-make-task-list-manipulations-rcu-safe-fix.patch
> task-make-task-list-manipulations-rcu-safe-fix-fix.patch
>
> Then we need this "patch" for de_thread:
>
> - list_add_tail_rcu(&current->tasks, &init_task.tasks);
> + list_replace_rcu(&leader->tasks, &current->tasks);
> ...
> - list_del_init(&leader->tasks);
>
> Currently I don't know how the code looks in -mm tree, I lost the plot.


Since the patches don't conflict on context I bet they are
all in there, at the moment. I am just about to see if I can
sort that out.

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