diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2007-10-09 16:02:17 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-10-10 19:54:59 -0400 |
commit | 32f0c4cbe495d121c09ed14d9c84f9e1b9574415 (patch) | |
tree | bdf044b03098748b6619bb71e8090ff5b9ef7da2 /net | |
parent | 0a8891a0a419d43ea06c8ded0849f0820c6a873b (diff) |
[NETNS]: Don't memset() netns to zero manually
The newly created net namespace is set to 0 with memset()
in setup_net(). The setup_net() is also called for the
init_net_ns(), which is zeroed naturally as a global var.
So remove this memset and allocate new nets with the
kmem_cache_zalloc().
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/core/net_namespace.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/net/core/net_namespace.c b/net/core/net_namespace.c index 0e0ca6d06fa5..6f71db8c4428 100644 --- a/net/core/net_namespace.c +++ b/net/core/net_namespace.c | |||
@@ -24,7 +24,7 @@ EXPORT_SYMBOL_GPL(init_net); | |||
24 | 24 | ||
25 | static struct net *net_alloc(void) | 25 | static struct net *net_alloc(void) |
26 | { | 26 | { |
27 | return kmem_cache_alloc(net_cachep, GFP_KERNEL); | 27 | return kmem_cache_zalloc(net_cachep, GFP_KERNEL); |
28 | } | 28 | } |
29 | 29 | ||
30 | static void net_free(struct net *net) | 30 | static void net_free(struct net *net) |
@@ -90,7 +90,6 @@ static int setup_net(struct net *net) | |||
90 | struct pernet_operations *ops; | 90 | struct pernet_operations *ops; |
91 | int error; | 91 | int error; |
92 | 92 | ||
93 | memset(net, 0, sizeof(struct net)); | ||
94 | atomic_set(&net->count, 1); | 93 | atomic_set(&net->count, 1); |
95 | atomic_set(&net->use_count, 0); | 94 | atomic_set(&net->use_count, 0); |
96 | 95 | ||