Messages in this thread | | | Date | Sun, 20 Feb 2011 22:28:53 +0000 | From | "Serge E. Hallyn" <> | Subject | Re: + userns-add-a-user_namespace-as-creator-owner-of-uts_namespace.patch added to -mm tree |
| |
Quoting Oleg Nesterov (oleg@redhat.com): > > Subject: userns: add a user_namespace as creator/owner of uts_namespace > > From: "Serge E. Hallyn" <serge@hallyn.com> > > Minor nit... feel free to ignore, but can't resist. > > --- a/kernel/nsproxy.c~userns-add-a-user_namespace-as-creator-owner-of-uts_namespace > +++ a/kernel/nsproxy.c > @@ -74,6 +74,11 @@ static struct nsproxy *create_new_namesp > err = PTR_ERR(new_nsp->uts_ns); > goto out_uts; > } > + if (new_nsp->uts_ns != tsk->nsproxy->uts_ns) { > + put_user_ns(new_nsp->uts_ns->user_ns); > + new_nsp->uts_ns->user_ns = task_cred_xxx(tsk, user)->user_ns; > + get_user_ns(new_nsp->uts_ns->user_ns); > + } > > Looks correct, but confusing imho. > > "new_nsp->uts_ns != tsk->nsproxy->uts_ns" is a bit strange way to > check "flags & CLONE_NEWUTS", no? > > And since copy_utsname() already checks CLONE_NEWUTS, can't we move > this code into copy_utsname() or clone_uts_ns() ?
Yup. I had only found the bug this addresses very late so sort of felt I should keep it as an obvious band-aid for now. I've got a lot of feedback to address on this set (!), and I'll do this more cleanly as well.
Thanks for taking a look, Oleg.
-serge
| |