diff options
Diffstat (limited to 'include/linux/cgroup.h')
-rw-r--r-- | include/linux/cgroup.h | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h index b5223c570eba..1d5196889048 100644 --- a/include/linux/cgroup.h +++ b/include/linux/cgroup.h | |||
@@ -27,7 +27,6 @@ | |||
27 | 27 | ||
28 | struct cgroup_root; | 28 | struct cgroup_root; |
29 | struct cgroup_subsys; | 29 | struct cgroup_subsys; |
30 | struct inode; | ||
31 | struct cgroup; | 30 | struct cgroup; |
32 | 31 | ||
33 | extern int cgroup_init_early(void); | 32 | extern int cgroup_init_early(void); |
@@ -38,7 +37,8 @@ extern void cgroup_exit(struct task_struct *p); | |||
38 | extern int cgroupstats_build(struct cgroupstats *stats, | 37 | extern int cgroupstats_build(struct cgroupstats *stats, |
39 | struct dentry *dentry); | 38 | struct dentry *dentry); |
40 | 39 | ||
41 | extern int proc_cgroup_show(struct seq_file *, void *); | 40 | extern int proc_cgroup_show(struct seq_file *m, struct pid_namespace *ns, |
41 | struct pid *pid, struct task_struct *tsk); | ||
42 | 42 | ||
43 | /* define the enumeration of all cgroup subsystems */ | 43 | /* define the enumeration of all cgroup subsystems */ |
44 | #define SUBSYS(_x) _x ## _cgrp_id, | 44 | #define SUBSYS(_x) _x ## _cgrp_id, |
@@ -161,11 +161,6 @@ static inline void css_put(struct cgroup_subsys_state *css) | |||
161 | 161 | ||
162 | /* bits in struct cgroup flags field */ | 162 | /* bits in struct cgroup flags field */ |
163 | enum { | 163 | enum { |
164 | /* | ||
165 | * Control Group has previously had a child cgroup or a task, | ||
166 | * but no longer (only if CGRP_NOTIFY_ON_RELEASE is set) | ||
167 | */ | ||
168 | CGRP_RELEASABLE, | ||
169 | /* Control Group requires release notifications to userspace */ | 164 | /* Control Group requires release notifications to userspace */ |
170 | CGRP_NOTIFY_ON_RELEASE, | 165 | CGRP_NOTIFY_ON_RELEASE, |
171 | /* | 166 | /* |
@@ -235,13 +230,6 @@ struct cgroup { | |||
235 | struct list_head e_csets[CGROUP_SUBSYS_COUNT]; | 230 | struct list_head e_csets[CGROUP_SUBSYS_COUNT]; |
236 | 231 | ||
237 | /* | 232 | /* |
238 | * Linked list running through all cgroups that can | ||
239 | * potentially be reaped by the release agent. Protected by | ||
240 | * release_list_lock | ||
241 | */ | ||
242 | struct list_head release_list; | ||
243 | |||
244 | /* | ||
245 | * list of pidlists, up to two for each namespace (one for procs, one | 233 | * list of pidlists, up to two for each namespace (one for procs, one |
246 | * for tasks); created on demand. | 234 | * for tasks); created on demand. |
247 | */ | 235 | */ |
@@ -250,6 +238,9 @@ struct cgroup { | |||
250 | 238 | ||
251 | /* used to wait for offlining of csses */ | 239 | /* used to wait for offlining of csses */ |
252 | wait_queue_head_t offline_waitq; | 240 | wait_queue_head_t offline_waitq; |
241 | |||
242 | /* used to schedule release agent */ | ||
243 | struct work_struct release_agent_work; | ||
253 | }; | 244 | }; |
254 | 245 | ||
255 | #define MAX_CGROUP_ROOT_NAMELEN 64 | 246 | #define MAX_CGROUP_ROOT_NAMELEN 64 |
@@ -536,13 +527,10 @@ static inline bool cgroup_has_tasks(struct cgroup *cgrp) | |||
536 | return !list_empty(&cgrp->cset_links); | 527 | return !list_empty(&cgrp->cset_links); |
537 | } | 528 | } |
538 | 529 | ||
539 | /* returns ino associated with a cgroup, 0 indicates unmounted root */ | 530 | /* returns ino associated with a cgroup */ |
540 | static inline ino_t cgroup_ino(struct cgroup *cgrp) | 531 | static inline ino_t cgroup_ino(struct cgroup *cgrp) |
541 | { | 532 | { |
542 | if (cgrp->kn) | 533 | return cgrp->kn->ino; |
543 | return cgrp->kn->ino; | ||
544 | else | ||
545 | return 0; | ||
546 | } | 534 | } |
547 | 535 | ||
548 | /* cft/css accessors for cftype->write() operation */ | 536 | /* cft/css accessors for cftype->write() operation */ |