The call to of_find_node_by_name returns a node pointer with refcount incremented thus it must be explicitly decremented here after the last usage. Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx> --- Patch found by experimental coccinelle script Patch was compile tested with: cavium_octeon_defconfig (with a number of sparse warnings - not related to the proposed change) Patch is against 4.17.0 (localversion-next is next-20180614) arch/mips/cavium-octeon/octeon-platform.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/mips/cavium-octeon/octeon-platform.c b/arch/mips/cavium-octeon/octeon-platform.c index 8505db4..1d92efb 100644 --- a/arch/mips/cavium-octeon/octeon-platform.c +++ b/arch/mips/cavium-octeon/octeon-platform.c @@ -320,10 +320,11 @@ static int __init octeon_ehci_device_init(void) ehci_node = of_find_node_by_name(NULL, "ehci"); if (!ehci_node) return 0; pd = of_find_device_by_node(ehci_node); + of_node_put(ehci_node); if (!pd) return 0; pd->dev.platform_data = &octeon_ehci_pdata; octeon_ehci_hw_start(&pd->dev); @@ -382,10 +383,11 @@ static int __init octeon_ohci_device_init(void) ohci_node = of_find_node_by_name(NULL, "ohci"); if (!ohci_node) return 0; pd = of_find_device_by_node(ohci_node); + of_node_put(ohci_node); if (!pd) return 0; pd->dev.platform_data = &octeon_ohci_pdata; octeon_ohci_hw_start(&pd->dev); -- 2.1.4