From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.5 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AAD77C433E6 for ; Tue, 1 Sep 2020 13:19:21 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 86AA820767 for ; Tue, 1 Sep 2020 13:19:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728043AbgIANTG (ORCPT ); Tue, 1 Sep 2020 09:19:06 -0400 Received: from wtarreau.pck.nerim.net ([62.212.114.60]:41229 "EHLO 1wt.eu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728172AbgIANRL (ORCPT ); Tue, 1 Sep 2020 09:17:11 -0400 Received: (from willy@localhost) by pcw.home.local (8.15.2/8.15.2/Submit) id 081DGNvk001119; Tue, 1 Sep 2020 15:16:23 +0200 Date: Tue, 1 Sep 2020 15:16:23 +0200 From: Willy Tarreau To: David Laight Cc: "linux-kernel@vger.kernel.org" , "netdev@vger.kernel.org" , Sedat Dilek , George Spelvin , Amit Klein , Eric Dumazet , "Jason A. Donenfeld" , Andy Lutomirski , Kees Cook , Thomas Gleixner , Peter Zijlstra , Linus Torvalds , "tytso@mit.edu" , Florian Westphal , Marc Plumb Subject: Re: [PATCH 1/2] random32: make prandom_u32() output unpredictable Message-ID: <20200901131623.GB1059@1wt.eu> References: <20200901064302.849-1-w@1wt.eu> <20200901064302.849-2-w@1wt.eu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.6.1 (2016-04-27) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Sep 01, 2020 at 01:10:18PM +0000, David Laight wrote: > From: Willy Tarreau > > Sent: 01 September 2020 07:43 > ... > > +/* > > + * Generate some initially weak seeding values to allow > > + * the prandom_u32() engine to be started. > > + */ > > +static int __init prandom_init_early(void) > > +{ > > + int i; > > + unsigned long v0, v1, v2, v3; > > + > > + if (!arch_get_random_long(&v0)) > > + v0 = jiffies; > > Isn't jiffies likely to be zero here? I don't know. But do we really care ? I'd personally have been fine with not even assigning it in this case and leaving whatever was in the stack in this case, though it could make some static code analyzer unhappy. Willy