diff options
author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2017-08-16 08:31:03 +0300 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2017-08-16 17:38:27 +0300 |
commit | c88c094985ad38c6f71ab5b0d3d68757db14c8b2 (patch) | |
tree | 6990101a2c0585c17e7b2bc76d59973dd99445a6 /drivers/ata/ahci_da850.c | |
parent | 2f60e1ab2f0e148e82cb53c539ad003ffc9b9bd0 (diff) | |
download | linux-c88c094985ad38c6f71ab5b0d3d68757db14c8b2.tar.xz |
sata: ahci-da850: Fix some error handling paths in 'ahci_da850_probe()'
'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>
Diffstat (limited to 'drivers/ata/ahci_da850.c')
-rw-r--r-- | drivers/ata/ahci_da850.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/ata/ahci_da850.c b/drivers/ata/ahci_da850.c index 1a50cd3b4233..9b34dff64536 100644 --- a/drivers/ata/ahci_da850.c +++ b/drivers/ata/ahci_da850.c @@ -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); |