[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200917072644.GA5311@gondor.apana.org.au>
Date: Thu, 17 Sep 2020 17:26:44 +1000
From: Herbert Xu <herbert@...dor.apana.org.au>
To: Eric Biggers <ebiggers@...nel.org>
Cc: tytso@....edu, linux-kernel@...r.kernel.org,
linux-crypto@...r.kernel.org, stable@...r.kernel.org
Subject: Re: [PATCH] random: use correct memory barriers for crng_node_pool
Eric Biggers <ebiggers@...nel.org> wrote:
> From: Eric Biggers <ebiggers@...gle.com>
>
> When a CPU selects which CRNG to use, it accesses crng_node_pool without
> a memory barrier. That's wrong, because crng_node_pool can be set by
> another CPU concurrently. Without a memory barrier, the crng_state that
> is used might not appear to be fully initialized.
The only architecture that requires a barrier for data dependency
is Alpha. The correct primitive to ensure that barrier is present
is smp_barrier_depends, or you could just use READ_ONCE.
Cheers,
--
Email: Herbert Xu <herbert@...dor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Powered by blists - more mailing lists