aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/neighbour.c
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2017-06-07 23:00:05 -0400
committerTheodore Ts'o <tytso@mit.edu>2017-06-19 22:06:28 -0400
commitb3d0f7895d1251f0af0dd38410e7be3e52be4a1d (patch)
tree7e9ba2352f0e817bafaad6bf63fa19edaac55bfa /net/core/neighbour.c
parentrhashtable: use get_random_u32 for hash_rnd (diff)
downloadlinux-dev-b3d0f7895d1251f0af0dd38410e7be3e52be4a1d.tar.xz
linux-dev-b3d0f7895d1251f0af0dd38410e7be3e52be4a1d.zip
net/neighbor: use get_random_u32 for 32-bit hash random
Using get_random_u32 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. 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/core/neighbour.c')
-rw-r--r--net/core/neighbour.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/net/core/neighbour.c b/net/core/neighbour.c
index d274f81fcc2c..9784133b0cdb 100644
--- a/net/core/neighbour.c
+++ b/net/core/neighbour.c
@@ -312,8 +312,7 @@ out_entries:
static void neigh_get_hash_rnd(u32 *x)
{
- get_random_bytes(x, sizeof(*x));
- *x |= 1;
+ *x = get_random_u32() | 1;
}
static struct neigh_hash_table *neigh_hash_alloc(unsigned int shift)