iommu/exynos: Fix error handling for of_platform_device_create
authorAmitoj Kaur Chawla <amitoj1606@gmail.com>
Mon, 1 Aug 2016 06:18:38 +0000 (11:48 +0530)
committerJoerg Roedel <jroedel@suse.de>
Tue, 9 Aug 2016 15:27:48 +0000 (17:27 +0200)
of_platform_device_create returns NULL on error so an IS_ERR test is
incorrect here and a NULL check is required.

The Coccinelle semantic patch used to make this change is as follows:
@@
expression e;
@@

  e = of_platform_device_create(...);
if(
-    IS_ERR(e)
+    !e
    )
    {
  <+...
  return
- PTR_ERR(e)
+ -ENODEV
  ;
  ...+>
  }

Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/exynos-iommu.c

index 33dcc29..30808e9 100644 (file)
@@ -1345,8 +1345,8 @@ static int __init exynos_iommu_of_setup(struct device_node *np)
                exynos_iommu_init();
 
        pdev = of_platform_device_create(np, NULL, platform_bus_type.dev_root);
-       if (IS_ERR(pdev))
-               return PTR_ERR(pdev);
+       if (!pdev)
+               return -ENODEV;
 
        /*
         * use the first registered sysmmu device for performing