On Fri, Jun 22, 2018 at 08:30:29AM -0700, Andrei Vagin wrote: > On Fri, Jun 22, 2018 at 01:52:16PM +0100, David Howells wrote: > > Andrei Vagin <avagin@xxxxxxxxxxxxx> wrote: > > > > > ret = 0; > > > + ctx->root = root; > > > goto out_unlock; > > > > Okay, I can see that. > > > > > percpu_ref_reinit(&root->cgrp.self.refcnt); > > > mutex_unlock(&cgroup_mutex); > > > } > > > + cgroup_get(&root->cgrp); > > > > This probably needs to be conditional on ret == 0. > > yes, you are right I've read the code and I think it isn't obvious. A reference will be released id cgroup_fs_context_free() even if ret isn't zero here. I look at do_new_mount() vfs_new_fs_context() ... if (vfs_get_tree()) goto out_fc; .... out_fc: put_fs_context(fc); fc->ops->free(fc); cgroup_fs_context_free() cgroup_put(&ctx->root->cgrp); > > > > > Which version are you testing btw? The patches in git have been fixed a > > little from what was last posted. > > I'm testing linux-next-20180621 > > commit 8439c34f07a3f58245e933ca2703239417288363 (tag: next-20180621, > linux-next/master) > Author: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > Date: Thu Jun 21 14:09:41 2018 +1000 > > Add linux-next specific files for 20180621 > > Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > > > > > David