sata: ahci-da850: Fix some error handling paths in 'ahci_da850_probe()'
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Wed, 16 Aug 2017 05:31:03 +0000 (07:31 +0200)
committerTejun Heo <tj@kernel.org>
Wed, 16 Aug 2017 14:38:27 +0000 (07:38 -0700)
'rc' is known to be 0 at this point.
If 'platform_get_resource()' or 'devm_ioremap()' fail, return -ENOMEM
instead of 0 which means success.

tj: Changed error code from -ENOMEM to -ENODEV for get_resource
    failure as suggested by Sergei.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
drivers/ata/ahci_da850.c

index 1a50cd3b4233bdf467049f3308c636fe32c0caf4..9b34dff6453633fcc9cf63393eb6fe553af29dbe 100644 (file)
@@ -216,12 +216,16 @@ static int ahci_da850_probe(struct platform_device *pdev)
                return rc;
 
        res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
-       if (!res)
+       if (!res) {
+               rc = -ENODEV;
                goto disable_resources;
+       }
 
        pwrdn_reg = devm_ioremap(dev, res->start, resource_size(res));
-       if (!pwrdn_reg)
+       if (!pwrdn_reg) {
+               rc = -ENOMEM;
                goto disable_resources;
+       }
 
        da850_sata_init(dev, pwrdn_reg, hpriv->mmio, mpy);