soc: imx: soc-imx8: Avoid unnecessary of_node_put() in error handling
authorAnson Huang <Anson.Huang@nxp.com>
Fri, 24 May 2019 05:51:00 +0000 (13:51 +0800)
committerShawn Guo <shawnguo@kernel.org>
Wed, 5 Jun 2019 06:08:10 +0000 (14:08 +0800)
of_node_put() is called after of_match_node() successfully called,
then in the following error handling, of_node_put() is called again
which is unnecessary, this patch adjusts the location of of_node_put()
to avoid such scenario.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
drivers/soc/imx/soc-imx8.c

index cd10726e64e4121a6411b09116f5c7f82b281fd5..d377a90f3a2fbda5ae099c712e7b94850e9bc859 100644 (file)
@@ -115,8 +115,6 @@ static int __init imx8_soc_init(void)
        if (!id)
                goto free_soc;
 
-       of_node_put(root);
-
        data = id->data;
        if (data) {
                soc_dev_attr->soc_id = data->name;
@@ -132,6 +130,8 @@ static int __init imx8_soc_init(void)
        if (IS_ERR(soc_dev))
                goto free_rev;
 
+       of_node_put(root);
+
        return 0;
 
 free_rev: