From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933385AbcL0Wok (ORCPT ); Tue, 27 Dec 2016 17:44:40 -0500 Received: from mail.eperm.de ([89.247.134.16]:55166 "EHLO mail.eperm.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933022AbcL0Wnq (ORCPT ); Tue, 27 Dec 2016 17:43:46 -0500 From: Stephan =?ISO-8859-1?Q?M=FCller?= To: Ted Tso Cc: linux-kernel@vger.kernel.org, linux-crypto@vger.kernel.org Subject: [PATCH 3/8] random: trigger random_ready callback upon crng_init == 1 Date: Tue, 27 Dec 2016 23:39:57 +0100 Message-ID: <3576149.HSfW5KObBF@positron.chronox.de> User-Agent: KMail/5.3.3 (Linux/4.8.14-300.fc25.x86_64; KDE/5.27.0; x86_64; ; ) In-Reply-To: <3254875.f5A5oHPdxF@positron.chronox.de> References: <3254875.f5A5oHPdxF@positron.chronox.de> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The random_ready callback mechanism is intended to replicate the getrandom system call behavior to in-kernel users. As the getrandom system call unblocks with crng_init == 1, trigger the random_ready wakeup call at the same time. Signed-off-by: Stephan Mueller --- drivers/char/random.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/char/random.c b/drivers/char/random.c index 482531d..5c26b1c 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -810,6 +810,7 @@ static int crng_fast_load(const char *cp, size_t len) } if (crng_init_cnt >= CRNG_INIT_CNT_THRESH) { crng_init = 1; + process_random_ready_list(); wake_up_interruptible(&crng_init_wait); pr_notice("random: fast init done\n"); } -- 2.9.3