>> It seems what you asked was an example of cgroup. >> Maybe the simplest cgroup in the kernel is CONFIG_CGROUP_CPUACCT. >> (kernel/sched.c) The next one is CGROUP_DEVICE (security/device_cgroup.c) >> >> Documentation under Documentation/cgroups/ is always taken care to be updated. >> If you notice some description is unclear or obsolete, please report it. > > I found my problem with the example there, > > my machine has no RAM on node 0. > > Can I suggest that the example might be better if it uses node 0 ? or had a > note saying that if you have no memory on node 1 that it will fail with: > "/bin/echo: write error: No space left on device" ? > > Also it would be a good idea if the example pointed out that the parent to > 'sh' is in the cgroup Charlie also. > > Heres a patch: > >>From e6e430d3c3e865f21dffc75ff090bb283a4f32a0 Mon Sep 17 00:00:00 2001 > From: Ian Molton <ian.molton@xxxxxxxxxxxxxxx> > Date: Tue, 22 Dec 2009 10:31:20 +0000 > Subject: [PATCH] cgroup: Clarify documentation > > This patch clarifies the cgroup documentation, giving some info on why > the example given may fail, and a little more detail on its expected behaviour. > > Signed-off-by: Ian Molton <ian.molton@xxxxxxxxxxxxxxx> > --- > Documentation/cgroups/cgroups.txt | 9 ++++++++- > 1 files changed, 8 insertions(+), 1 deletions(-) > > diff --git a/Documentation/cgroups/cgroups.txt b/Documentation/cgroups/cgroups.txt > index 0b33bfe..8ac8615 100644 > --- a/Documentation/cgroups/cgroups.txt > +++ b/Documentation/cgroups/cgroups.txt > @@ -309,7 +309,9 @@ the "cpuset" cgroup subsystem, the steps are something like: > > For example, the following sequence of commands will setup a cgroup > named "Charlie", containing just CPUs 2 and 3, and Memory Node 1, > -and then start a subshell 'sh' in that cgroup: > +and then start a subshell 'sh' in that cgroup. Note that if you have no RAM > +on node 1 or dont have 4 CPUs you will want to modify the example > +accordingly: > > mount -t cgroup cpuset -ocpuset /dev/cgroup > cd /dev/cgroup > @@ -317,7 +319,12 @@ and then start a subshell 'sh' in that cgroup: > cd Charlie > /bin/echo 2-3 > cpuset.cpus > /bin/echo 1 > cpuset.mems > + # If you have no RAM on Node 0 the next command will return an error, eg. > + # write error: No space left on device Please patch Documentation/cgroups/cpusets.txt instead, and CC the maintainers. > /bin/echo $$ > tasks > + # The current shell is now in cgroup Charlie. You can check this with: > + cat /proc/self/cgroup This is a duplicate. The documenation just below has showed the use of /proc/self/cgroup. > + # Now launch a subshell which should inherit the cgroup: > sh > # The subshell 'sh' is now running in cgroup Charlie > # The next line should display '/Charlie' _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers