Re: [PATCH 4/8] cgroup: export cgroup_get() and cgroup_put()
From: Tejun Heo <hidden>
Date: 2015-11-24 16:31:06
Also in:
cgroups, lkml
Hello, On Mon, Nov 16, 2015 at 01:51:41PM -0600, serge-A9i7LUbDfNHQT0dZR+AlfA@public.gmane.org wrote:
quoted hunk ↗ jump to hunk
From: Aditya Kali <redacted> move cgroup_get() and cgroup_put() into cgroup.h so that they can be called from other places. Signed-off-by: Aditya Kali <redacted> Acked-by: Serge Hallyn <redacted> --- include/linux/cgroup.h | 21 +++++++++++++++++++++ kernel/cgroup.c | 22 ---------------------- 2 files changed, 21 insertions(+), 22 deletions(-)diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h index 29f0b02..99096be 100644 --- a/include/linux/cgroup.h +++ b/include/linux/cgroup.h@@ -231,6 +231,27 @@ void css_task_iter_end(struct css_task_iter *it); #define css_for_each_descendant_post(pos, css) \ for ((pos) = css_next_descendant_post(NULL, (css)); (pos); \ (pos) = css_next_descendant_post((pos), (css)))
Please insert a blank line here.
+/* convenient tests for these bits */
And I don't think the comment makes sense here.
+static inline bool cgroup_is_dead(const struct cgroup *cgrp)
+{
+ return !(cgrp->self.flags & CSS_ONLINE);
+}
+
+static inline void cgroup_get(struct cgroup *cgrp)
+{
+ WARN_ON_ONCE(cgroup_is_dead(cgrp));
+ css_get(&cgrp->self);
+}
+
+static inline bool cgroup_tryget(struct cgroup *cgrp)
+{
+ return css_tryget(&cgrp->self);
+}
+
+static inline void cgroup_put(struct cgroup *cgrp)
+{
+ css_put(&cgrp->self);
+}So these are being exposed for cgroup NS support. Hmmm... idk, does cgroup NS support needs to be in a spearate file? The added amount isn't that big. If we split cgroup.c, I'd much prefer to have cgroup-internal.h for internally shared stuff than pushing them out to cgroup.h. Thanks. -- tejun