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=-2.5 required=3.0 tests=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 33A05C4CEC4 for ; Mon, 16 Sep 2019 01:57:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 0C1132067D for ; Mon, 16 Sep 2019 01:57:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729314AbfIPB5R (ORCPT ); Sun, 15 Sep 2019 21:57:17 -0400 Received: from shells.gnugeneration.com ([66.240.222.126]:54288 "EHLO shells.gnugeneration.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728267AbfIPB5Q (ORCPT ); Sun, 15 Sep 2019 21:57:16 -0400 Received: by shells.gnugeneration.com (Postfix, from userid 1000) id 343D61A40603; Sun, 15 Sep 2019 18:48:34 -0700 (PDT) Date: Sun, 15 Sep 2019 18:48:34 -0700 From: Vito Caputo To: "Ahmed S. Darwish" Cc: Linus Torvalds , Lennart Poettering , "Theodore Y. Ts'o" , Andreas Dilger , Jan Kara , Ray Strode , William Jon McCann , "Alexander E. Patrakov" , zhangjs , linux-ext4@vger.kernel.org, lkml Subject: Re: Linux 5.3-rc8 Message-ID: <20190916014833.cbetw4sqm3lq4x6m@shells.gnugeneration.com> References: <20190911173624.GI2740@mit.edu> <20190912034421.GA2085@darwi-home-pc> <20190912082530.GA27365@mit.edu> <20190914150206.GA2270@darwi-home-pc> <20190915065142.GA29681@gardel-login> <20190916014050.GA7002@darwi-home-pc> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190916014050.GA7002@darwi-home-pc> User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Sep 16, 2019 at 03:40:50AM +0200, Ahmed S. Darwish wrote: > On Sun, Sep 15, 2019 at 09:29:55AM -0700, Linus Torvalds wrote: > > On Sat, Sep 14, 2019 at 11:51 PM Lennart Poettering > > wrote: > > > > > > Oh man. Just spend 5min to understand the situation, before claiming > > > this was garbage or that was garbage. The code above does not block > > > boot. > > > > Yes it does. You clearly didn't read the thread. > > > > > It blocks startup of services that explicit order themselves > > > after the code above. There's only a few services that should do that, > > > and the main system boots up just fine without waiting for this. > > > > That's a nice theory, but it doesn't actually match reality. > > > > There are clearly broken setups that use this for things that it > > really shouldn't be used for. Asking for true randomness at boot > > before there is any indication that randomness exists, and then just > > blocking with no further action that could actually _generate_ said > > randomness. > > > > If your description was true that the system would come up and be > > usable while the blocked thread is waiting for that to happen, things > > would be fine. > > > > A small note here, especially after I've just read the commit log of > 72dbcf721566 ('Revert ext4: "make __ext4_get_inode_loc plug"'), which > unfairly blames systemd there. > > Yes, the systemd-random-seed(8) process blocks, but this is an > isolated process, and it's only there as a synchronization point and > to load/restore random seeds from disk across reboots. > > The wisdom of having a sysnchronization service ("before/after urandom > CRNG is inited") can be debated. That service though, and systemd in > general, did _not_ block the overall system boot. > > What blocked the system boot was GDM/gnome-session implicitly calling > getrandom() for the Xorg MIT cookie. This was shown in the strace log > below: > > https://lkml.kernel.org/r/20190910173243.GA3992@darwi-home-pc > So did systemd-random-seed instead drain what little entropy there was before GDM started, increasing the likelihood a subsequent getrandom() call would block? Regards, Vito Caputo