cgroup: init_tasks shouldn't be linked to the root cgroup
authorTejun Heo <tj@kernel.org>
Thu, 30 Jan 2020 16:37:33 +0000 (11:37 -0500)
committerTejun Heo <tj@kernel.org>
Thu, 30 Jan 2020 16:37:33 +0000 (11:37 -0500)
commit0cd9d33ace336bc424fc30944aa3defd6786e4fe
treeeb96a2a3b8d55ecd4c96741eefd766c9d86c68e7
parent39bed42de2e7d74686a2d5a45638d6a5d7e7d473
cgroup: init_tasks shouldn't be linked to the root cgroup

5153faac18d2 ("cgroup: remove cgroup_enable_task_cg_lists()
optimization") removed lazy initialization of css_sets so that new
tasks are always lniked to its css_set. In the process, it incorrectly
ended up adding init_tasks to root css_set. They show up as PID 0's in
root's cgroup.procs triggering warnings in systemd and generally
confusing people.

Fix it by skip css_set linking for init_tasks.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: https://github.com/joanbm
Link: https://github.com/systemd/systemd/issues/14682
Fixes: 5153faac18d2 ("cgroup: remove cgroup_enable_task_cg_lists() optimization")
Cc: stable@vger.kernel.org # v5.5+
kernel/cgroup/cgroup.c