From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751822AbbCRFV0 (ORCPT ); Wed, 18 Mar 2015 01:21:26 -0400 Received: from home.keithp.com ([63.227.221.253]:46690 "EHLO elaine.keithp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750721AbbCRFVZ (ORCPT ); Wed, 18 Mar 2015 01:21:25 -0400 X-Greylist: delayed 467 seconds by postgrey-1.27 at vger.kernel.org; Wed, 18 Mar 2015 01:21:24 EDT From: Keith Packard To: Matt Mackall , Herbert Xu Cc: linux-kernel@vger.kernel.org, Keith Packard Subject: [PATCH] hwrng: core - allow perfect entropy from hardware devices Date: Tue, 17 Mar 2015 22:13:28 -0700 Message-Id: <1426655608-24749-1-git-send-email-keithp@keithp.com> X-Mailer: git-send-email 2.1.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hardware random number quality is measured from 0 (no entropy) to 1024 (perfect entropy). Allow hardware devices to assert the full range by truncating the device-provided value at 1024 instead of 1023. Signed-off-by: Keith Packard --- drivers/char/hw_random/core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/char/hw_random/core.c b/drivers/char/hw_random/core.c index 1500cfd..b726683 100644 --- a/drivers/char/hw_random/core.c +++ b/drivers/char/hw_random/core.c @@ -98,7 +98,8 @@ static inline int hwrng_init(struct hwrng *rng) add_early_randomness(rng); current_quality = rng->quality ? : default_quality; - current_quality &= 1023; + if (current_quality > 1024) + current_quality = 1024; if (current_quality == 0 && hwrng_fill) kthread_stop(hwrng_fill); -- 2.1.4