]> git.baikalelectronics.ru Git - kernel.git/commit
cgroup: fix top cgroup refcnt leak
authorLi Zefan <lizefan@huawei.com>
Fri, 4 Apr 2014 09:14:41 +0000 (17:14 +0800)
committerTejun Heo <tj@kernel.org>
Fri, 4 Apr 2014 12:22:27 +0000 (08:22 -0400)
commit988723cf61a4aec808e53af289fc1cdfd96b6b7a
treee6ed4f1c3b98474996b6b61e232569564d86d352
parentba997c280bd04cb3a03972147f9148a05b1a4b72
cgroup: fix top cgroup refcnt leak

As mount() and kill_sb() is not a one-to-one match, If we mount the same
cgroupfs in serveral mount points, and then umount all of them, kill_sb()
will be called only once.

Try:
        # mount -t cgroup -o cpuacct xxx /cgroup
        # mount -t cgroup -o cpuacct xxx /cgroup2
        # cat /proc/cgroups | grep cpuacct
        cpuacct 2       1       1
        # umount /cgroup
        # umount /cgroup2
        # cat /proc/cgroups | grep cpuacct
        cpuacct 2       1       1

You'll see cgroupfs will never be freed.

Signed-off-by: Li Zefan <lizefan@huawei.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
kernel/cgroup.c