diff options
author | Tejun Heo <tj@kernel.org> | 2015-10-15 23:00:43 +0200 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2015-10-15 23:00:43 +0200 |
commit | 035f4f510583193949168c77dc957293df24bd77 (patch) | |
tree | fe5e1d12e1618db770ee41025a55bd29552b44e7 /kernel | |
parent | cgroup: add cgroup_subsys->free() method and use it to fix pids controller (diff) | |
download | linux-035f4f510583193949168c77dc957293df24bd77.tar.xz linux-035f4f510583193949168c77dc957293df24bd77.zip |
cgroup: replace error handling in cgroup_init() with WARN_ON()s
The init sequence shouldn't fail short of bugs and even when it does
it's better to continue with the rest of initialization and we were
silently ignoring /proc/cgroups creation failure.
Drop the explicit error handling and wrap sysfs_create_mount_point(),
register_filesystem() and proc_create() with WARN_ON()s.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Li Zefan <lizefan@huawei.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/cgroup.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/kernel/cgroup.c b/kernel/cgroup.c index 867384369669..74daeefa2d30 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c @@ -5242,7 +5242,7 @@ int __init cgroup_init(void) { struct cgroup_subsys *ss; unsigned long key; - int ssid, err; + int ssid; BUG_ON(percpu_init_rwsem(&cgroup_threadgroup_rwsem)); BUG_ON(cgroup_init_cftypes(NULL, cgroup_dfl_base_files)); @@ -5304,17 +5304,10 @@ int __init cgroup_init(void) ss->bind(init_css_set.subsys[ssid]); } - err = sysfs_create_mount_point(fs_kobj, "cgroup"); - if (err) - return err; - - err = register_filesystem(&cgroup_fs_type); - if (err < 0) { - sysfs_remove_mount_point(fs_kobj, "cgroup"); - return err; - } + WARN_ON(sysfs_create_mount_point(fs_kobj, "cgroup")); + WARN_ON(register_filesystem(&cgroup_fs_type)); + WARN_ON(!proc_create("cgroups", 0, NULL, &proc_cgroupstats_operations)); - proc_create("cgroups", 0, NULL, &proc_cgroupstats_operations); return 0; } |