X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=kernel%2Fnsproxy.c;h=09b4ff9711b2b920ee8a042bfebab452869d9702;hb=82ead7fe41da960ed80652d13d5a1072f85f5aca;hp=63598dca2d0c9080448a5f6ab421d72c542f18c1;hpb=18b6e0414e42d95183f07d8177e3ff0241abd825;p=safe%2Fjmp%2Flinux-2.6 diff --git a/kernel/nsproxy.c b/kernel/nsproxy.c index 63598dc..09b4ff9 100644 --- a/kernel/nsproxy.c +++ b/kernel/nsproxy.c @@ -26,19 +26,14 @@ static struct kmem_cache *nsproxy_cachep; struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); -/* - * creates a copy of "orig" with refcount 1. - */ -static inline struct nsproxy *clone_nsproxy(struct nsproxy *orig) +static inline struct nsproxy *create_nsproxy(void) { - struct nsproxy *ns; + struct nsproxy *nsproxy; - ns = kmem_cache_alloc(nsproxy_cachep, GFP_KERNEL); - if (ns) { - memcpy(ns, orig, sizeof(struct nsproxy)); - atomic_set(&ns->count, 1); - } - return ns; + nsproxy = kmem_cache_alloc(nsproxy_cachep, GFP_KERNEL); + if (nsproxy) + atomic_set(&nsproxy->count, 1); + return nsproxy; } /* @@ -52,7 +47,7 @@ static struct nsproxy *create_new_namespaces(unsigned long flags, struct nsproxy *new_nsp; int err; - new_nsp = clone_nsproxy(tsk->nsproxy); + new_nsp = create_nsproxy(); if (!new_nsp) return ERR_PTR(-ENOMEM);