[PATCH 7/8] cgroup: mount cgroupns-root when inside non-init cgroupns
Serge Hallyn
serge.hallyn at ubuntu.com
Mon Dec 7 15:53:01 UTC 2015
Quoting Tejun Heo (tj at kernel.org):
> Hello, Serge.
>
> On Thu, Dec 03, 2015 at 04:47:06PM -0600, Serge E. Hallyn wrote:
> ...
> > + dentry = dget(sb->s_root);
> > + if (!kn->parent) // this is the root
> > + return dentry;
> > +
> > + knparent = find_kn_ancestor_below(kn, NULL);
> > + BUG_ON(!knparent);
>
> Doing WARN_ON() and returning failure is better, I think. Failing ns
> mount is an okay failure mode and a lot better than crashing the
> system.
Ok - this shouldn't be user-triggerable, so if it happens it really
is a bug in our code, but I'll change it,
> Also, how about find_next_ancestor() for the name of the
> function?
Yeah it's static anyway :)
will change, squash, and resend the set.
> > + do {
> > + struct dentry *dtmp;
> > + struct kernfs_node *kntmp;
> > +
> > + if (kn == knparent)
> > + return dentry;
> > + kntmp = find_kn_ancestor_below(kn, knparent);
> > + BUG_ON(!kntmp);
> > + dtmp = lookup_one_len(kntmp->name, dentry, strlen(kntmp->name));
> > + dput(dentry);
> > + if (IS_ERR(dtmp))
> > + return dtmp;
> > + knparent = kntmp;
> > + dentry = dtmp;
> > + } while (1);
>
> Other than the nitpicks, looks good to me.
>
> Thanks.
>
> --
> tejun
More information about the Containers
mailing list