Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933753AbaGXRDX (ORCPT ); Thu, 24 Jul 2014 13:03:23 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:57518 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750771AbaGXRDW (ORCPT ); Thu, 24 Jul 2014 13:03:22 -0400 Date: Thu, 24 Jul 2014 17:03:16 +0000 From: Serge Hallyn To: Aditya Kali Cc: tj@kernel.org, lizefan@huawei.com, cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, linux-api@vger.kernel.org, mingo@redhat.com, containers@lists.linux-foundation.org Subject: Re: [PATCH 4/5] cgroup: export cgroup_get() and cgroup_put() Message-ID: <20140724170316.GS26600@ubuntumail> References: <1405626731-12220-1-git-send-email-adityakali@google.com> <1405626731-12220-5-git-send-email-adityakali@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1405626731-12220-5-git-send-email-adityakali@google.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Quoting Aditya Kali (adityakali@google.com): > move cgroup_get() and cgroup_put() into cgroup.h so that > they can be called from other places. > > Signed-off-by: Aditya Kali Acked-by: Serge E. Hallyn > --- > include/linux/cgroup.h | 17 +++++++++++++++++ > kernel/cgroup.c | 18 ------------------ > 2 files changed, 17 insertions(+), 18 deletions(-) > > diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h > index 707c302..4ea477f 100644 > --- a/include/linux/cgroup.h > +++ b/include/linux/cgroup.h > @@ -530,6 +530,23 @@ static inline bool cgroup_on_dfl(const struct cgroup *cgrp) > return cgrp->root == &cgrp_dfl_root; > } > > +/* convenient tests for these bits */ > +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 void cgroup_put(struct cgroup *cgrp) > +{ > + css_put(&cgrp->self); > +} > + > /* no synchronization, the result can only be used as a hint */ > static inline bool cgroup_has_tasks(struct cgroup *cgrp) > { > diff --git a/kernel/cgroup.c b/kernel/cgroup.c > index 1671345..8552513 100644 > --- a/kernel/cgroup.c > +++ b/kernel/cgroup.c > @@ -185,7 +185,6 @@ static int need_forkexit_callback __read_mostly; > static struct cftype cgroup_dfl_base_files[]; > static struct cftype cgroup_legacy_base_files[]; > > -static void cgroup_put(struct cgroup *cgrp); > static int rebind_subsystems(struct cgroup_root *dst_root, > unsigned int ss_mask); > static int cgroup_destroy_locked(struct cgroup *cgrp); > @@ -286,12 +285,6 @@ static struct cgroup_subsys_state *cgroup_e_css(struct cgroup *cgrp, > return cgroup_css(cgrp, ss); > } > > -/* convenient tests for these bits */ > -static inline bool cgroup_is_dead(const struct cgroup *cgrp) > -{ > - return !(cgrp->self.flags & CSS_ONLINE); > -} > - > struct cgroup_subsys_state *of_css(struct kernfs_open_file *of) > { > struct cgroup *cgrp = of->kn->parent->priv; > @@ -1029,17 +1022,6 @@ static umode_t cgroup_file_mode(const struct cftype *cft) > return mode; > } > > -static void cgroup_get(struct cgroup *cgrp) > -{ > - WARN_ON_ONCE(cgroup_is_dead(cgrp)); > - css_get(&cgrp->self); > -} > - > -static void cgroup_put(struct cgroup *cgrp) > -{ > - css_put(&cgrp->self); > -} > - > /** > * cgroup_refresh_child_subsys_mask - update child_subsys_mask > * @cgrp: the target cgroup > -- > 2.0.0.526.g5318336 > > _______________________________________________ > Containers mailing list > Containers@lists.linux-foundation.org > https://lists.linuxfoundation.org/mailman/listinfo/containers -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/