summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2017-06-07 23:01:20 -0400
committerTheodore Ts'o <tytso@mit.edu>2017-06-19 22:06:28 -0400
commit7aed9f72c3c70bdc18e72ec086c1a0eafdcd273f (patch)
tree721f4c8aee15729fc98cfe1ed2c602397f2fe890 /net
parentb3d0f7895d1251f0af0dd38410e7be3e52be4a1d (diff)
downloadlinux-stable-7aed9f72c3c70bdc18e72ec086c1a0eafdcd273f.tar.gz
linux-stable-7aed9f72c3c70bdc18e72ec086c1a0eafdcd273f.tar.bz2
linux-stable-7aed9f72c3c70bdc18e72ec086c1a0eafdcd273f.zip
net/route: use get_random_int for random counter
Using get_random_int here is faster, more fitting of the use case, and just as cryptographically secure. It also has the benefit of providing better randomness at early boot, which is when many of these structures are assigned. Also, semantically, it's not really proper to have been assigning an atomic_t in this way before, even if in practice it works fine. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> Cc: David Miller <davem@davemloft.net> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'net')
-rw-r--r--net/ipv4/route.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
index 655d9eebe43e..11e001a42094 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -2936,8 +2936,7 @@ static __net_init int rt_genid_init(struct net *net)
{
atomic_set(&net->ipv4.rt_genid, 0);
atomic_set(&net->fnhe_genid, 0);
- get_random_bytes(&net->ipv4.dev_addr_genid,
- sizeof(net->ipv4.dev_addr_genid));
+ atomic_set(&net->ipv4.dev_addr_genid, get_random_int());
return 0;
}