]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/powernv: wire up rng during setup_arch
authorJason A. Donenfeld <Jason@zx2c4.com>
Tue, 21 Jun 2022 14:08:49 +0000 (16:08 +0200)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 22 Jun 2022 09:47:22 +0000 (19:47 +1000)
commit190a840060dd023628951c6e3d9bcd76f94e2ed0
tree0bdf301d346ea35613ca3798b1ea418991bfd85a
parentc0981346c5b3ee82b5b17042044104c5906b397d
powerpc/powernv: wire up rng during setup_arch

The platform's RNG must be available before random_init() in order to be
useful for initial seeding, which in turn means that it needs to be
called from setup_arch(), rather than from an init call.

Complicating things, however, is that POWER8 systems need some per-cpu
state and kmalloc, which isn't available at this stage. So we split
things up into an early phase and a later opportunistic phase. This
commit also removes some noisy log messages that don't add much.

Fixes: 6df169e4df87 ("powerpc: Implement arch_get_random_long/int() for powernv")
Cc: stable@vger.kernel.org # v3.13+
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
[mpe: Add of_node_put(), use pnv naming, minor change log editing]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220621140849.127227-1-Jason@zx2c4.com
arch/powerpc/platforms/powernv/powernv.h
arch/powerpc/platforms/powernv/rng.c
arch/powerpc/platforms/powernv/setup.c