2011-03-15 23:12:27

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH 5/6] Documentation: update cgroup pid and cpuset information

From: Eric B Munson <[email protected]>

The cgroup documentation does not specify how a process can be removed from a
particular group. This patch adds a note at the end of the simple example
about how this is done. Also, some cgroups (like cpusets) require user input
before a new group can be used. This is noted in the patch as well.

Signed-off-by: Eric B Munson <[email protected]>
Acked-by: Paul Menage <[email protected]>
Signed-off-by: Randy Dunlap <[email protected]>
---
Changes from V1:
Rework the note about removing a process from a cgroup
Add note about ns cgroup causing failure when moving processes between groups

Documentation/cgroups/cgroups.txt | 12 ++++++++++++
1 file changed, 12 insertions(+)

--- lnx-2638-rc8.orig/Documentation/cgroups/cgroups.txt
+++ lnx-2638-rc8/Documentation/cgroups/cgroups.txt
@@ -349,6 +349,10 @@ To mount a cgroup hierarchy with all ava
The "xxx" is not interpreted by the cgroup code, but will appear in
/proc/mounts so may be any useful identifying string that you like.

+Note: Some subsystems do not work without some user input first. For instance,
+if cpusets are enabled the user will have to populate the cpus and mems files
+for each new cgroup created before that group can be used.
+
To mount a cgroup hierarchy with just the cpuset and memory
subsystems, type:
# mount -t cgroup -o cpuset,memory hier1 /dev/cgroup
@@ -426,6 +430,14 @@ You can attach the current shell task by

# echo 0 > tasks

+Note: Since every task is always a member of exactly one cgroup in each
+mounted hierarchy, to remove a task from its current cgroup you must
+move it into a new cgroup (possibly the root cgroup) by writing to the
+new cgroup's tasks file.
+
+Note: If the ns cgroup is active, moving a process to another cgroup can
+fail.
+
2.3 Mounting hierarchies by name
--------------------------------