cgroup: document how cgroup IDs are assigned
authorLi Zefan <lizefan@huawei.com>
Wed, 31 Jul 2013 01:51:06 +0000 (09:51 +0800)
committerTejun Heo <tj@kernel.org>
Wed, 31 Jul 2013 11:47:34 +0000 (07:47 -0400)
As cgroup id has been used in netprio cgroup and will be used in memcg,
it's important to make it clear how a cgroup id is allocated.

For example, in netprio cgroup, the id is used as index of anarray.

Signed-off-by: Li Zefan <lizefan@huwei.com>
Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Tejun Heo <tj@kernel.org>
include/linux/cgroup.h

index cca570e..4dfcd0e 100644 (file)
@@ -161,7 +161,13 @@ struct cgroup_name {
 struct cgroup {
        unsigned long flags;            /* "unsigned long" so bitops work */
 
-       int id;                         /* idr allocated in-hierarchy ID */
+       /*
+        * idr allocated in-hierarchy ID.
+        *
+        * The ID of the root cgroup is always 0, and a new cgroup
+        * will be assigned with a smallest available ID.
+        */
+       int id;
 
        /*
         * We link our 'sibling' struct into our parent's 'children'.