The call to of_find_compatible_node() returns a node pointer with refcount incremented thus it must be explicitly decremented here before returning.
Signed-off-by: Nicholas Mc Guire <hof...@osadl.org> Fixes: commit a489043f4626 ("powerpc/pseries: Implement arch_get_random_long() based on H_RANDOM") --- Problem found with experimental coccinelle script Patch was compiletested with: ppc64_defconfig (implies CONFIG_PPC_PSERIES=y) with some unrelated sparse warnings (which I did not understand) ./arch/powerpc/include/asm/head-64.h:13:36: warning: Unknown escape '(' ./arch/powerpc/include/asm/head-64.h:16:36: warning: Unknown escape '(' ./arch/powerpc/include/asm/head-64.h:19:36: warning: Unknown escape '(' Patch is aginst 4.18-rc2 (localversion-next is next-20180702) arch/powerpc/platforms/pseries/rng.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/powerpc/platforms/pseries/rng.c b/arch/powerpc/platforms/pseries/rng.c index 31ca557..262b8c5 100644 --- a/arch/powerpc/platforms/pseries/rng.c +++ b/arch/powerpc/platforms/pseries/rng.c @@ -40,6 +40,7 @@ static __init int rng_init(void) ppc_md.get_random_seed = pseries_get_random_long; + of_node_put(dn); return 0; } machine_subsys_initcall(pseries, rng_init); -- 2.1.4