Re: [PATCHSET cgroup/for-3.12] cgroup: decouple cgroup_subsys_state lifetime from that of cgroup
From: Li Zefan <hidden>
Date: 2013-08-13 01:19:21
Also in:
lkml
On 2013/8/9 4:13, Tejun Heo wrote:
Hello, Currently a css's (cgroup_subsys_state) lifetime is tied to that of the cgroup it's attached to. css's are created when the cgroup is created and destroyed together. The access rules depend on it too - e.g. css's can be dereferenced while holding RCU read lock because cgroup is protected with RCU. With the planned unified hierarchy, we'll be dynamically creating and destroying css's through the lifetime of a cgroup, so we can no longer hitch css lifetime management onto cgroup's. This patchset separates out css lifetime management from that of cgroup. After the patchset, each css is individually RCU protected. This patchset contains the following 14 patches. 0001-cgroup-always-use-cgroup_css.patch 0002-cgroup-rename-cgroup_subsys_state-dput_work-and-its-.patch 0003-cgroup-add-cgroup_subsys_state-parent.patch 0004-cgroup-cgroup_css_from_dir-now-should-be-called-with.patch 0005-cgroup-make-cgroup_file_open-rcu_read_lock-around-cg.patch 0006-cgroup-add-__rcu-modifier-to-cgroup-subsys.patch 0007-cgroup-reorganize-css-init-exit-paths.patch 0008-cgroup-move-cgroup-subsys-assignment-to-online_css.patch 0009-cgroup-bounce-cgroup_subsys_state-ref-kill-confirmat.patch 0010-cgroup-replace-cgroup-css_kill_cnt-with-nr_css.patch 0011-cgroup-decouple-cgroup_subsys_state-destruction-from.patch 0012-cgroup-factor-out-kill_css.patch 0013-cgroup-move-subsys-file-removal-to-kill_css.patch 0014-cgroup-RCU-protect-each-cgroup_subsys_state-release.patch
Acked-by: Li Zefan <redacted>