* [PATCH 06/30] netns: don't get/put old netns on CLONE_NEWNET
@ 2009-04-10 2:34 ` Alexey Dobriyan
0 siblings, 0 replies; 4+ messages in thread
From: Alexey Dobriyan @ 2009-04-10 2:34 UTC (permalink / raw)
To: akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b,
containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA
Cc: xemul-bzQdu9zFT3WakBO8gow8eQ, linux-kernel-u79uwXL29TY76Z2rM5mHXA,
dave-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8, hch-wEGCiKHe2LqWVfeAwA7xHQ,
mingo-X9Un+BFzKDI, torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b
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-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
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:
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 06/30] netns: don't get/put old netns on CLONE_NEWNET
@ 2009-04-10 2:34 ` Alexey Dobriyan
0 siblings, 0 replies; 4+ messages in thread
From: Alexey Dobriyan @ 2009-04-10 2:34 UTC (permalink / raw)
To: akpm, containers
Cc: xemul, serue, dave, mingo, orenl, hch, torvalds, linux-kernel
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@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:
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 06/30] netns: don't get/put old netns on CLONE_NEWNET
[not found] ` <20090410023431.GG27788-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
@ 2009-04-10 22:39 ` Serge E. Hallyn
0 siblings, 0 replies; 4+ messages in thread
From: Serge E. Hallyn @ 2009-04-10 22:39 UTC (permalink / raw)
To: Alexey Dobriyan
Cc: xemul-bzQdu9zFT3WakBO8gow8eQ,
containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA,
linux-kernel-u79uwXL29TY76Z2rM5mHXA,
dave-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8, hch-wEGCiKHe2LqWVfeAwA7xHQ,
akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b,
torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b, mingo-X9Un+BFzKDI
Quoting Alexey Dobriyan (adobriyan-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org):
> 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-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Acked-by: Serge Hallyn <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
> ---
>
> 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:
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 06/30] netns: don't get/put old netns on CLONE_NEWNET
2009-04-10 2:34 ` Alexey Dobriyan
(?)
@ 2009-04-10 22:39 ` Serge E. Hallyn
-1 siblings, 0 replies; 4+ messages in thread
From: Serge E. Hallyn @ 2009-04-10 22:39 UTC (permalink / raw)
To: Alexey Dobriyan
Cc: akpm, containers, xemul, dave, mingo, orenl, hch, torvalds,
linux-kernel
Quoting Alexey Dobriyan (adobriyan@gmail.com):
> 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@gmail.com>
Acked-by: Serge Hallyn <serue@us.ibm.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:
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-04-10 22:39 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-10 2:34 [PATCH 06/30] netns: don't get/put old netns on CLONE_NEWNET Alexey Dobriyan
2009-04-10 2:34 ` Alexey Dobriyan
2009-04-10 22:39 ` Serge E. Hallyn
[not found] ` <20090410023431.GG27788-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-04-10 22:39 ` Serge E. Hallyn
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.