Can not remove the subdirectory in cgroup pseudo-filesystem

Serge E. Hallyn serue at us.ibm.com
Wed Mar 25 18:51:56 PDT 2009


Quoting Li Zefan (lizf at cn.fujitsu.com):
> anqin wrote:
> >> Yes you have to initialize some cpuset files first.  Otherwise
> >> the tasks have no access to any memory or cpus.
> >>
> > 
> > Oh... thank you for reminding. Previously, I run my tests in
> > a experimental kernel, it seems someone has set the
> > parameters.
> > 
> > 
> > BTW, is it possible currently to combine two tasks into
> > one cgroup? for instance, I have run two bashes (bash_A and
> 
> I recomend you to read Documentation/cgroups/cgroups.txt to know
> cgroup better. Cgroup is used to aggregate/partition sets of tasks,
> so of course you can put more than 1 task into a cgroup.
> 
> > bash_B). Now, in bash_A, I created a cgroup in procfs:
> > 
> > # mount -t cgroup cgroup /mnt/cgrp
> 
> mount cgroupfs with all cgroup subsystems is not so sane IMO.
> 
> > # cd /mnt/cgrp
> > # mkdir test
> > # echo $$ > test/tasks
> > 
> > Then, I would like to add bash_B in this task group but
> > fail:
> > 
> > # echo #(PID_OF_bash_B) >  test/tasks
> > -bash: echo: write error: Operation not permitted
> > 
> 
> That's because ns_cgroup is binded in this cgroup hierarchy, and
> it's ns_cgroup that prevents the task attaching, but a patch in
> -mm tree relaxes this check, and you won't see this restriction
> when using ns_cgroup.

Ooh, right, you can only enter an empty cgroup in "older" kernels...

In my defense, that made sense when the ns cgroup was still possibly
going to be used for allowing tasks to enter each other's namespaces. :)

-serge

> > It seems the cgroup can not couple two irrelevant
> > task together, right?
> > 
> > 
> > Best,
> > 
> > Anqin


More information about the Containers mailing list