Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753436AbdFGX1S (ORCPT ); Wed, 7 Jun 2017 19:27:18 -0400 Received: from frisell.zx2c4.com ([192.95.5.64]:55513 "EHLO frisell.zx2c4.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753529AbdFGX0k (ORCPT ); Wed, 7 Jun 2017 19:26:40 -0400 From: "Jason A. Donenfeld" To: "Theodore Ts'o" , Linux Crypto Mailing List , LKML , kernel-hardening@lists.openwall.com, Greg Kroah-Hartman , Eric Biggers , Linus Torvalds , David Miller Cc: "Jason A. Donenfeld" Subject: [PATCH v5 11/13] net/route: use get_random_int for random counter Date: Thu, 8 Jun 2017 01:26:05 +0200 Message-Id: <20170607232607.26870-12-Jason@zx2c4.com> In-Reply-To: <20170607232607.26870-1-Jason@zx2c4.com> References: <20170607232607.26870-1-Jason@zx2c4.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 992 Lines: 30 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 Cc: David Miller --- net/ipv4/route.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 6883b3d4ba8f..32a3332ec9cf 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -2944,8 +2944,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; } -- 2.13.0