Received: by 2002:ad5:4acb:0:0:0:0:0 with SMTP id n11csp858373imw; Wed, 13 Jul 2022 09:12:14 -0700 (PDT) X-Google-Smtp-Source: AGRyM1uD8PMKog6+yjgTUP/215aK5qSmZpi8fcG7ggHIJafk/tv/0fzSjtU4FHS/dk+OEHoAXftl X-Received: by 2002:aa7:c84a:0:b0:437:bc9c:af63 with SMTP id g10-20020aa7c84a000000b00437bc9caf63mr5703393edt.370.1657728734298; Wed, 13 Jul 2022 09:12:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1657728734; cv=none; d=google.com; s=arc-20160816; b=h8GCGg2b4xsEAzTvkCFGl5G4a9XsHcaNmW3NBmj//euIt8Cfq14EQ+TWHTW0WzdeJo ActOHAAPVJGB7kX9QlUuMqFGssh/jaYnhaUqAMLO8UtBzqlt5PtuKHpTh8MHxW4RYSDR wvcBjJQwzn5B7kvkATXyXYuwIR8o2SZeIdJxaF9MXgDjlzd+bV/Oh/IfVspU9xGWz/eq TGe2bGGYFlncEQmvxrI4QE9cSGOoWGyzFmFzSgi5avzcD43HzfLwCOuLJ+6IvS3Y5mS/ EN0KZBio0gr79k9KVu67Hj4ylPzN+82vctzMOulz+h35GpVciJhQouf1bcXQeqdTuo57 d8rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=ugwYC450TjXfLkl2gld9iZv1RNN7akvsnwB9J8c+KOI=; b=HN7nVhcmRK1bmSKrnDRUL1GtsZ+x0xJj2a134rM1V4WYcEgjj590yW9fr1oqDHPGz2 h/H3z3y+sXS5GzeZIhtQT/+du3q/0fmYmcsB7JFRA0WHT20Vjngzo+RZP9hsK07yQVR4 +rNa0ZhbRPKeN+t4/X8SHgdVGd5jTGgpcOzyyfZ4HKdhA0whp4W4kN6D2f22NKjST+Im 5YMt5c0cBZPLngRqBNwfNuCtxF0sOsmrGtjzCxsVVJtA0O+exYE7dnPaJ1oFPh4RHx/G vZms5SBfNrmWRrh0TmUCdqz09fApawSX9f3UXgPgW754tWuwv1k3yO7+Yzav1UpddS9V sQrw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id dd18-20020a1709069b9200b0072b132aeec5si18593579ejc.648.2022.07.13.09.11.39; Wed, 13 Jul 2022 09:12:14 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236963AbiGMPwe (ORCPT + 99 others); Wed, 13 Jul 2022 11:52:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57166 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229753AbiGMPwd (ORCPT ); Wed, 13 Jul 2022 11:52:33 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id B95814F19E; Wed, 13 Jul 2022 08:52:32 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DC1C315A1; Wed, 13 Jul 2022 08:52:32 -0700 (PDT) Received: from [10.1.29.153] (e121487-lin.cambridge.arm.com [10.1.29.153]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 933993F792; Wed, 13 Jul 2022 08:52:31 -0700 (PDT) Message-ID: <88d9e600-b687-7d09-53cb-727601612e21@arm.com> Date: Wed, 13 Jul 2022 16:52:20 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1 Subject: Re: [PATCH] random: cap jitter samples per bit to factor of HZ Content-Language: en-US To: "Jason A. Donenfeld" , linux-kernel@vger.kernel.org Cc: linux-crypto@vger.kernel.org, ebiggers@google.com, tytso@mit.edu, torvalds@linux-foundation.org References: <20220713151115.1014188-1-Jason@zx2c4.com> From: Vladimir Murzin In-Reply-To: <20220713151115.1014188-1-Jason@zx2c4.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,NICE_REPLY_A, RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org On 7/13/22 16:11, Jason A. Donenfeld wrote: > Currently the jitter mechanism will require two timer ticks per > iteration, and it requires N iterations per bit. This N is determined > with a small measurement, and if it's too big, it won't waste time with > jitter entropy because it'd take too long or not have sufficient entropy > anyway. > > With the current max N of 32, there are large timeouts on systems with a > small CONFIG_HZ. Rather than set that maximum to 32, instead choose a > factor of CONFIG_HZ. In this case, 1/30 seems to yield sane values for > different configurations of CONFIG_HZ. > > Reported-by: Vladimir Murzin > Fixes: 78c768e619fb ("random: vary jitter iterations based on cycle counter speed") > Signed-off-by: Jason A. Donenfeld > --- > Vladimir - Can you let me know if this appears to fix the issue you're > seeing? -Jason Works for me, thanks! :) > > drivers/char/random.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/char/random.c b/drivers/char/random.c > index e3dd1dd3dd22..a1af90bacc9f 100644 > --- a/drivers/char/random.c > +++ b/drivers/char/random.c > @@ -1174,7 +1174,7 @@ static void __cold entropy_timer(struct timer_list *timer) > */ > static void __cold try_to_generate_entropy(void) > { > - enum { NUM_TRIAL_SAMPLES = 8192, MAX_SAMPLES_PER_BIT = 32 }; > + enum { NUM_TRIAL_SAMPLES = 8192, MAX_SAMPLES_PER_BIT = HZ / 30 }; > struct entropy_timer_state stack; > unsigned int i, num_different = 0; > unsigned long last = random_get_entropy(); FWIW Tested-by: Vladimir Murzin Cheers Vladimir