[Devel] [PATCH 06/30] netns: don't get/put old netns on CLONE_NEWNET

Alexey Dobriyan adobriyan at gmail.com
Thu Apr 9 19:34:31 PDT 2009


copy_net_ns() doesn't copy anything, it creates fresh netns,
so get/put of old netns is unneeded.

Signed-off-by: Alexey Dobriyan <adobriyan at gmail.com>
---

 net/core/net_namespace.c |    5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

--- a/net/core/net_namespace.c
+++ b/net/core/net_namespace.c
@@ -120,10 +120,8 @@ struct net *copy_net_ns(unsigned long flags, struct net *old_net)
 	struct net *new_net = NULL;
 	int err;
 
-	get_net(old_net);
-
 	if (!(flags & CLONE_NEWNET))
-		return old_net;
+		return get_net(old_net);
 
 	err = -ENOMEM;
 	new_net = net_alloc();
@@ -142,7 +140,6 @@ struct net *copy_net_ns(unsigned long flags, struct net *old_net)
 	if (err)
 		goto out_free;
 out:
-	put_net(old_net);
 	return new_net;
 
 out_free:
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers




More information about the Devel mailing list