cgroup: remove obsoleted broken_hierarchy and warned_broken_hierarchy
authorRoman Gushchin <guro@fb.com>
Tue, 15 Dec 2020 03:06:55 +0000 (19:06 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Dec 2020 20:13:40 +0000 (12:13 -0800)
With the deprecation of the non-hierarchical mode of the memory controller
there are no more examples of broken hierarchies left.

Let's remove the cgroup core code which was supposed to print warnings
about creating of broken hierarchies.

Link: https://lkml.kernel.org/r/20201110220800.929549-4-guro@fb.com
Signed-off-by: Roman Gushchin <guro@fb.com>
Reviewed-by: Shakeel Butt <shakeelb@google.com>
Acked-by: David Rientjes <rientjes@google.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/cgroup-defs.h
kernel/cgroup/cgroup.c

index fee0b55..559ee05 100644 (file)
@@ -668,21 +668,6 @@ struct cgroup_subsys {
         */
        bool threaded:1;
 
-       /*
-        * If %false, this subsystem is properly hierarchical -
-        * configuration, resource accounting and restriction on a parent
-        * cgroup cover those of its children.  If %true, hierarchy support
-        * is broken in some ways - some subsystems ignore hierarchy
-        * completely while others are only implemented half-way.
-        *
-        * It's now disallowed to create nested cgroups if the subsystem is
-        * broken and cgroup core will emit a warning message on such
-        * cases.  Eventually, all subsystems will be made properly
-        * hierarchical and this will go away.
-        */
-       bool broken_hierarchy:1;
-       bool warned_broken_hierarchy:1;
-
        /* the following two fields are initialized automtically during boot */
        int id;
        const char *name;
index 80c5c34..16f4692 100644 (file)
@@ -5149,13 +5149,6 @@ static struct cgroup_subsys_state *css_create(struct cgroup *cgrp,
        if (err)
                goto err_list_del;
 
-       if (ss->broken_hierarchy && !ss->warned_broken_hierarchy &&
-           cgroup_parent(parent)) {
-               pr_warn("%s (%d) created nested cgroup for controller \"%s\" which has incomplete hierarchy support. Nested cgroups may change behavior in the future.\n",
-                       current->comm, current->pid, ss->name);
-               ss->warned_broken_hierarchy = true;
-       }
-
        return css;
 
 err_list_del: