Don't memset() netns to zero manually
Subsystems (2)
PATCH 1/1 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 <[email protected]>
---
net/core/net_namespace.c +1 -2
@@ -24,7 +24,7 @@ EXPORT_SYMBOL_GPL(init_net);static struct net *net_alloc (void ) { -return kmem_cache_alloc (net_cachep,GFP_KERNEL ); +return kmem_cache_zalloc (net_cachep,GFP_KERNEL ); }static void net_free (struct net *net)
@@ -90,7 +90,6 @@ static int setup_net(struct net *net)struct pernet_operations *ops;int error; -memset (net,0 ,sizeof (struct net ));atomic_set (&net->count,1 );atomic_set (&net->use_count,0 );
From: Pavel Emelyanov <[email protected]>
Date: Tue, 09 Oct 2007 15:48:19 +0400
Quoted 8 lines
The newly created net namespace is set to 0 with
memset()insetup_net(). Thesetup_net()is also called for theinit_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 <[email protected]>
Applied, thanks Pavel!