[RFC 1/5] user namespaces: Add a user_namespace as creator/owner of uts_namespace

Serge Hallyn serge.hallyn at canonical.com
Fri Dec 17 11:46:45 PST 2010


Quoting Greg KH (greg at kroah.com):
> > +extern struct user_namespace init_user_ns;
> >  struct uts_namespace init_uts_ns = {
> >  	.kref = {
> >  		.refcount	= ATOMIC_INIT(2),
> 
> Wait, WTF?
> 
> You have a static kref and you try to automatically instanciate it here?

You're complaining about the pre-existing init_uts_ns right?

> As it's static, why are you even having a kref at all, what good does it
> do you, you can't delete the thing,

Can't delete this one, but can delete all the uts namespaces, obviously.
As with init_tgcred in kernel/cred.c.

It's initialized with a refcount which will keep it from ever getting
freed.

> it's always around, so just remove
> it entirely please.
> 
> Or, dynamically create it properly.  In other words, this is majorly
> broken.

If we create it dynamically, then I don't think we can use it the way we
do in kernel/utsname_sysctl.c for instance.

thanks,
-serge


More information about the Containers mailing list