]> git.baikalelectronics.ru Git - kernel.git/commit
random: move initialization out of reseeding hot path
authorJason A. Donenfeld <Jason@zx2c4.com>
Mon, 9 May 2022 11:53:24 +0000 (13:53 +0200)
committerJason A. Donenfeld <Jason@zx2c4.com>
Wed, 18 May 2022 13:53:53 +0000 (15:53 +0200)
commit2cbba2f420127f4c207c7cc4c41d00d3bacdacc8
treebc4b1ebe0d0ec25bfff4a8a9a8181f32ad742078
parent77992b2dd705e7713244575a5177e9b942ccba58
random: move initialization out of reseeding hot path

Initialization happens once -- by way of credit_init_bits() -- and then
it never happens again. Therefore, it doesn't need to be in
crng_reseed(), which is a hot path that is called multiple times. It
also doesn't make sense to have there, as initialization activity is
better associated with initialization routines.

After the prior commit, crng_reseed() now won't be called by multiple
concurrent callers, which means that we can safely move the
"finialize_init" logic into crng_init_bits() unconditionally.

Reviewed-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
drivers/char/random.c