summaryrefslogtreecommitdiffstats
path: root/include/linux/cgroup.h
diff options
context:
space:
mode:
authorZefan Li <lizefan@huawei.com>2014-09-18 04:06:19 -0400
committerTejun Heo <tj@kernel.org>2014-09-18 13:14:22 -0400
commit971ff49355387fef41d1327434d8939721a4eb35 (patch)
tree3488f3db1de2b97183453864f0a3c2a896ef856a /include/linux/cgroup.h
parent0c8fc2c1210556434835adfb2274f41704853e8a (diff)
cgroup: use a per-cgroup work for release agent
Instead of using a global work to schedule release agent on removable cgroups, we change to use a per-cgroup work to do this, which makes the code much simpler. v2: use a dedicated work instead of reusing css->destroy_work. (Tejun) Signed-off-by: Zefan Li <lizefan@huawei.com> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'include/linux/cgroup.h')
-rw-r--r--include/linux/cgroup.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h
index f7898e0bce1e..51958d0fb88f 100644
--- a/include/linux/cgroup.h
+++ b/include/linux/cgroup.h
@@ -234,13 +234,6 @@ struct cgroup {
234 struct list_head e_csets[CGROUP_SUBSYS_COUNT]; 234 struct list_head e_csets[CGROUP_SUBSYS_COUNT];
235 235
236 /* 236 /*
237 * Linked list running through all cgroups that can
238 * potentially be reaped by the release agent. Protected by
239 * release_list_lock
240 */
241 struct list_head release_list;
242
243 /*
244 * list of pidlists, up to two for each namespace (one for procs, one 237 * list of pidlists, up to two for each namespace (one for procs, one
245 * for tasks); created on demand. 238 * for tasks); created on demand.
246 */ 239 */
@@ -249,6 +242,9 @@ struct cgroup {
249 242
250 /* used to wait for offlining of csses */ 243 /* used to wait for offlining of csses */
251 wait_queue_head_t offline_waitq; 244 wait_queue_head_t offline_waitq;
245
246 /* used to schedule release agent */
247 struct work_struct release_agent_work;
252}; 248};
253 249
254#define MAX_CGROUP_ROOT_NAMELEN 64 250#define MAX_CGROUP_ROOT_NAMELEN 64