From: Paul Jackson <[EMAIL PROTECTED]> The code in kernel/cgroup.c attach_task() which skips the attachment of a task to the group it is already in has to be removed. Cpusets depends on reattaching a task to its current cpuset, in order to trigger updating the cpus_allowed mask in the task struct.
The dependency of cpusets on this is a hack, granted, but an important one. It lets us avoid checking for a changed cpuset 'cpus' setting in critical scheduler code paths. Signed-off-by: Paul Jackson <[EMAIL PROTECTED]> Cc: Paul Menage <[EMAIL PROTECTED]> --- Andrew - this patch applies directly following the patch: task-containersv11-add-tasks-file-interface.patch kernel/cgroup.c | 3 --- 1 file changed, 3 deletions(-) --- 2.6.23-rc8-mm1.orig/kernel/cgroup.c 2007-10-02 20:24:11.078925442 -0700 +++ 2.6.23-rc8-mm1/kernel/cgroup.c 2007-10-02 20:25:41.352279374 -0700 @@ -739,10 +739,7 @@ static int attach_task(struct cgroup *co get_first_subsys(cont, NULL, &subsys_id); - /* Nothing to do if the task is already in that cgroup */ oldcont = task_cgroup(tsk, subsys_id); - if (cont == oldcont) - return 0; for_each_subsys(root, ss) { if (ss->can_attach) { -- I won't rest till it's the best ... Programmer, Linux Scalability Paul Jackson <[EMAIL PROTECTED]> 1.650.933.1373 - 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/