On Sun, Dec 7, 2008 at 10:52 PM, gowrishankar <gomuthuk@xxxxxxxxxxxxxxxxxx> wrote: > Once tasks are populated from system namespace inside cgroup, container > replaces > other namespace task with 0 while listing tasks, inside container. > Though this is expected behaviour > from container end, there is no use of showing unwanted 0s. > In below patch, we check if a process is in same namespace before > loading into pid array. > > Signed-off-by: Gowrishankar M <gowrishankar.m@xxxxxxxxxx> Looks sensible, thanks. Acked-by: Paul Menage <menage@xxxxxxxxxx> Can you send it on to akpm@xxxxxxxxxxxxxxxxxxx? A couple of small style issues: - title would be better as "skip processes from other namespaces when listing a cgroup" - use the local variable name "pid" rather than "ret" > Index: linux-2.6.28-rc3/kernel/cgroup.c > =================================================================== > --- linux-2.6.28-rc3.orig/kernel/cgroup.c 2008-12-07 > 13:23:19.000000000 -0500 > +++ linux-2.6.28-rc3/kernel/cgroup.c 2008-12-07 13:24:28.000000000 -0500 > @@ -2011,14 +2011,15 @@ > */ > static int pid_array_load(pid_t *pidarray, int npids, struct cgroup *cgrp) > { > - int n = 0; > + int n = 0, ret; > struct cgroup_iter it; > struct task_struct *tsk; > cgroup_iter_start(cgrp, &it); > while ((tsk = cgroup_iter_next(cgrp, &it))) { > if (unlikely(n == npids)) > break; > - pidarray[n++] = task_pid_vnr(tsk); > + if ((ret = task_pid_vnr(tsk)) > 0) > + pidarray[n++] = ret; > } > cgroup_iter_end(cgrp, &it); > return n; > _______________________________________________ > Containers mailing list > Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx > https://lists.linux-foundation.org/mailman/listinfo/containers > > _______________________________________________ > Devel mailing list > Devel@xxxxxxxxxx > https://openvz.org/mailman/listinfo/devel > _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers