]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - drivers/pinctrl/pinctrl-falcon.c
nvmet-loop: fix possible leakage during error flow
[linux.git] / drivers / pinctrl / pinctrl-falcon.c
index 4a3b8d2677fd498feaa25011a25b663ab1fefb17..a454f57c264eede94a37a7d51573fc3c717c2982 100644 (file)
@@ -451,12 +451,15 @@ static int pinctrl_falcon_probe(struct platform_device *pdev)
                falcon_info.clk[*bank] = clk_get(&ppdev->dev, NULL);
                if (IS_ERR(falcon_info.clk[*bank])) {
                        dev_err(&ppdev->dev, "failed to get clock\n");
+                       of_node_put(np)
                        return PTR_ERR(falcon_info.clk[*bank]);
                }
                falcon_info.membase[*bank] = devm_ioremap_resource(&pdev->dev,
                                                                   &res);
-               if (IS_ERR(falcon_info.membase[*bank]))
+               if (IS_ERR(falcon_info.membase[*bank])) {
+                       of_node_put(np);
                        return PTR_ERR(falcon_info.membase[*bank]);
+               }
 
                avail = pad_r32(falcon_info.membase[*bank],
                                        LTQ_PADC_AVAIL);