soc: bcm: brcmstb: Add of_node_put() in pm-mips
authorWan Jiabing <wanjiabing@vivo.com>
Fri, 15 Oct 2021 06:49:23 +0000 (02:49 -0400)
committerFlorian Fainelli <f.fainelli@gmail.com>
Mon, 15 Nov 2021 17:57:14 +0000 (09:57 -0800)
Fix following coccicheck warning:
./drivers/soc/bcm/brcmstb/pm/pm-mips.c:404:1-23: WARNING: Function
for_each_matching_node should have of_node_put() before goto or break

Early exits from for_each_matching_node should decrement the
node reference counter.

Signed-off-by: Wan Jiabing <wanjiabing@vivo.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
drivers/soc/bcm/brcmstb/pm/pm-mips.c

index cdc3e387f049edb8a63ab3006b038a25670ce8b1..4dfb5a85032b72489bd3fcbac63a39bfc52d1596 100644 (file)
@@ -405,11 +405,14 @@ static int brcmstb_pm_init(void)
                i = ctrl.num_memc;
                if (i >= MAX_NUM_MEMC) {
                        pr_warn("Too many MEMCs (max %d)\n", MAX_NUM_MEMC);
+                       of_node_put(dn);
                        break;
                }
                base = brcmstb_ioremap_node(dn, 0);
-               if (IS_ERR(base))
+               if (IS_ERR(base)) {
+                       of_node_put(dn);
                        goto ddr_err;
+               }
 
                ctrl.memcs[i].ddr_phy_base = base;
                ctrl.num_memc++;