]> www.infradead.org Git - users/hch/xfs.git/commit
cgroup: Protect css->cgroup write under css_set_lock
authorWaiman Long <longman@redhat.com>
Wed, 3 Jul 2024 18:52:29 +0000 (14:52 -0400)
committerTejun Heo <tj@kernel.org>
Wed, 3 Jul 2024 18:59:06 +0000 (08:59 -1000)
commit57b56d16800e8961278ecff0dc755d46c4575092
treedabcc5b7330e058dde3a294fb557e08b1e14f634
parent1be59c97c83ccd67a519d8a49486b3a8a73ca28a
cgroup: Protect css->cgroup write under css_set_lock

The writing of css->cgroup associated with the cgroup root in
rebind_subsystems() is currently protected only by cgroup_mutex.
However, the reading of css->cgroup in both proc_cpuset_show() and
proc_cgroup_show() is protected just by css_set_lock. That makes the
readers susceptible to racing problems like data tearing or caching.
It is also a problem that can be reported by KCSAN.

This can be fixed by using READ_ONCE() and WRITE_ONCE() to access
css->cgroup. Alternatively, the writing of css->cgroup can be moved
under css_set_lock as well which is done by this patch.

Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
kernel/cgroup/cgroup.c