On 30-Jun-2022, at 5:46 PM, Jason A. Donenfeld Jason@zx2c4.com wrote:
The of node for the rng must be created much later in boot. Otherwise it tries to connect to a parent that doesn't yet exist, resulting on this splat:
[ 0.000478] kobject: '(null)' ((____ptrval____)): is not initialized, yet kobject_get() is being called. [ 0.002925] [c000000002a0fb30] [c00000000073b0bc] kobject_get+0x8c/0x100 (unreliable) [ 0.003071] [c000000002a0fba0] [c00000000087e464] device_add+0xf4/0xb00 [ 0.003194] [c000000002a0fc80] [c000000000a7f6e4] of_device_add+0x64/0x80 [ 0.003321] [c000000002a0fcb0] [c000000000a800d0] of_platform_device_create_pdata+0xd0/0x1b0 [ 0.003476] [c000000002a0fd00] [c00000000201fa44] pnv_get_random_long_early+0x240/0x2e4 [ 0.003623] [c000000002a0fe20] [c000000002060c38] random_init+0xc0/0x214
This patch fixes the issue by doing the of node creation inside of machine_subsys_initcall.
Fixes: f3eac426657d ("powerpc/powernv: wire up rng during setup_arch") Cc: stable@vger.kernel.org Cc: Michael Ellerman mpe@ellerman.id.au Reported-by: Sachin Sant sachinp@linux.ibm.com Signed-off-by: Jason A. Donenfeld Jason@zx2c4.com
Thanks Jason for the patch. This fixes the reported problem for me.
Tested-by: Sachin Sant sachinp@linux.ibm.com
- Sachin