From: Jason Cooper Subject: Re: [PATCH][RESEND 3] hwrng: add randomness to system from rng sources Date: Thu, 6 Mar 2014 07:55:33 -0500 Message-ID: <20140306125533.GA1872@titan.lakedaemon.net> References: <20140303235148.GA7601@www.outflux.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-kernel@vger.kernel.org, Matt Mackall , Herbert Xu , Rusty Russell , Satoru Takeuchi , linux-crypto@vger.kernel.org, Theodore Ts'o , Andrew Morton To: Kees Cook Return-path: Received: from mho-02-ewr.mailhop.org ([204.13.248.72]:16019 "EHLO mho-02-ewr.mailhop.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750829AbaCFMzi (ORCPT ); Thu, 6 Mar 2014 07:55:38 -0500 Content-Disposition: inline In-Reply-To: <20140303235148.GA7601@www.outflux.net> Sender: linux-crypto-owner@vger.kernel.org List-ID: On Mon, Mar 03, 2014 at 03:51:48PM -0800, Kees Cook wrote: > When bringing a new RNG source online, it seems like it would make sense > to use some of its bytes to make the system entropy pool more random, > as done with all sorts of other devices that contain per-device or > per-boot differences. > > Signed-off-by: Kees Cook > --- > drivers/char/hw_random/core.c | 7 +++++++ > 1 file changed, 7 insertions(+) fwiw, Reviewed-by: Jason Cooper thx, Jason. > diff --git a/drivers/char/hw_random/core.c b/drivers/char/hw_random/core.c > index a0f7724852eb..6e5bb68a708c 100644 > --- a/drivers/char/hw_random/core.c > +++ b/drivers/char/hw_random/core.c > @@ -41,6 +41,7 @@ > #include > #include > #include > +#include > #include > > > @@ -305,6 +306,8 @@ int hwrng_register(struct hwrng *rng) > int must_register_misc; > int err = -EINVAL; > struct hwrng *old_rng, *tmp; > + unsigned char bytes[16]; > + int bytes_read; > > if (rng->name == NULL || > (rng->data_read == NULL && rng->read == NULL)) > @@ -348,6 +351,10 @@ int hwrng_register(struct hwrng *rng) > } > INIT_LIST_HEAD(&rng->list); > list_add_tail(&rng->list, &rng_list); > + > + bytes_read = rng_get_data(rng, bytes, sizeof(bytes), 1); > + if (bytes_read > 0) > + add_device_randomness(bytes, bytes_read); > out_unlock: > mutex_unlock(&rng_mutex); > out: > -- > 1.7.9.5 > > > -- > Kees Cook > Chrome OS Security > -- > To unsubscribe from this list: send the line "unsubscribe linux-crypto" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html