Re: [PATCH 7/8] cgroup: mount cgroupns-root when inside non-init cgroupns

From: Serge E. Hallyn
Date: Mon Nov 30 2015 - 23:07:40 EST


On Mon, Nov 30, 2015 at 10:09:38AM -0500, Tejun Heo wrote:
> Hello, Serge.
>
> On Thu, Nov 26, 2015 at 11:17:45PM -0600, Serge E. Hallyn wrote:
> > > Wouldn't it be simpler to walk dentry from kernfs root than
> > > duplicating dentry instantiation?
> >
> > Sorry I don't think I'm following. Are you suggesting walking the
> > kn->parent chain backward and doing d_lookup() at each point starting
> > with sb->s_root?
>
> Yeah, something like that. I wonder whether there are already code
> paths doing that. What we need is a straight path walk. I could be
> wrong but it shouldn't be that complex and if it works out we can
> avoid introducing another instantiation / lookup path.
>
> Thanks.

So actually the way the code is now, the first mount cannot
be done from a non-init user namespace; and kernfs_obtain_root()
is only called from non-init user namespace. So can we assume
that the root dentry will be instantiated? (or can it get
evicted?)

If we can assume that then most of that fn can go away.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/