summaryrefslogtreecommitdiffstats
path: root/net/tipc/core.c
diff options
context:
space:
mode:
authorYing Xue <ying.xue@windriver.com>2015-01-09 15:27:12 +0800
committerDavid S. Miller <davem@davemloft.net>2015-01-12 16:24:33 -0500
commitbafa29e34185fb70496bfd604dc9e4071049f023 (patch)
treead8c2ab58340a54061d7ddb3735f9bd72ea704b0 /net/tipc/core.c
parenta62fbccecd62bacb4416fc427239f5b43b25d05e (diff)
downloadlinux-bafa29e34185fb70496bfd604dc9e4071049f023.tar.gz
linux-bafa29e34185fb70496bfd604dc9e4071049f023.tar.bz2
linux-bafa29e34185fb70496bfd604dc9e4071049f023.zip
tipc: make tipc random value aware of net namespace
After namespace is supported, each namespace should own its private random value. So the global variable representing the random value must be moved to tipc_net structure. Signed-off-by: Ying Xue <ying.xue@windriver.com> Tested-by: Tero Aho <Tero.Aho@coriant.com> Reviewed-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc/core.c')
-rw-r--r--net/tipc/core.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/net/tipc/core.c b/net/tipc/core.c
index 4a8b7955e0e0..674bd2698528 100644
--- a/net/tipc/core.c
+++ b/net/tipc/core.c
@@ -44,9 +44,6 @@
#include <linux/module.h>
-/* global variables used by multiple sub-systems within TIPC */
-int tipc_random __read_mostly;
-
/* configurable TIPC parameters */
int tipc_net_id __read_mostly;
int sysctl_tipc_rmem[3] __read_mostly; /* min/default/max */
@@ -58,6 +55,7 @@ static int __net_init tipc_init_net(struct net *net)
tn->net_id = 4711;
tn->own_addr = 0;
+ get_random_bytes(&tn->random, sizeof(int));
INIT_LIST_HEAD(&tn->node_list);
spin_lock_init(&tn->node_list_lock);
@@ -109,8 +107,6 @@ static int __init tipc_init(void)
TIPC_CRITICAL_IMPORTANCE;
sysctl_tipc_rmem[2] = TIPC_CONN_OVERLOAD_LIMIT;
- get_random_bytes(&tipc_random, sizeof(tipc_random));
-
err = tipc_netlink_start();
if (err)
goto out_netlink;