summaryrefslogtreecommitdiffstats
path: root/kernel/cpuset.c
diff options
context:
space:
mode:
authorLi Zefan <lizefan@huawei.com>2013-01-24 14:43:28 +0800
committerTejun Heo <tj@kernel.org>2013-02-18 09:08:10 -0800
commit71b5707e119653039e6e95213f00479668c79b75 (patch)
treecb0dfe84c3b8ec46efce2aa4185342a3a75cc3a1 /kernel/cpuset.c
parent9ed8a659703876a9fe96ab86d1b296c2f0084242 (diff)
downloadop-kernel-dev-71b5707e119653039e6e95213f00479668c79b75.zip
op-kernel-dev-71b5707e119653039e6e95213f00479668c79b75.tar.gz
cgroup: fix exit() vs rmdir() race
In cgroup_exit() put_css_set_taskexit() is called without any lock, which might lead to accessing a freed cgroup: thread1 thread2 --------------------------------------------- exit() cgroup_exit() put_css_set_taskexit() atomic_dec(cgrp->count); rmdir(); /* not safe !! */ check_for_release(cgrp); rcu_read_lock() can be used to make sure the cgroup is alive. Signed-off-by: Li Zefan <lizefan@huawei.com> Signed-off-by: Tejun Heo <tj@kernel.org> Cc: stable@vger.kernel.org
Diffstat (limited to 'kernel/cpuset.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud