firmware: stratix10-svc: fix wrong of_node_put() in init function
authorNicolas Saenz Julienne <nsaenzjulienne@suse.de>
Mon, 3 Dec 2018 17:27:21 +0000 (18:27 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Dec 2018 14:42:18 +0000 (15:42 +0100)
After finding a "firmware" dt node stratix10 tries to match it's
compatible string with it. To do so it's calling of_find_matching_node()
which already takes care of decreasing the refcount on the "firmware"
node. We are then incorrectly decreasing the refcount on that node
again.

This patch removes the unwarranted call to of_node_put().

Fixes: 7ca5ce896524 ("firmware: add Intel Stratix10 service layer driver")
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/firmware/stratix10-svc.c

index 81f3182..6e65148 100644 (file)
@@ -1016,14 +1016,11 @@ static int __init stratix10_svc_init(void)
                return -ENODEV;
 
        np = of_find_matching_node(fw_np, stratix10_svc_drv_match);
-       if (!np) {
-               of_node_put(fw_np);
+       if (!np)
                return -ENODEV;
-       }
 
        of_node_put(np);
        ret = of_platform_populate(fw_np, stratix10_svc_drv_match, NULL, NULL);
-       of_node_put(fw_np);
        if (ret)
                return ret;