Patchwork stmmac: don't return zero on failure path in stmmac_pci_probe()

login
register
mail settings
Submitter Alexey Khoroshilov
Date Feb. 1, 2013, 10:09 p.m.
Message ID <1359756559-20211-1-git-send-email-khoroshilov@ispras.ru>
Download mbox | patch
Permalink /patch/217601/
State Accepted
Delegated to: David Miller
Headers show

Comments

Alexey Khoroshilov - Feb. 1, 2013, 10:09 p.m.
If stmmac_dvr_probe() fails in stmmac_pci_probe(), it breaks off initialization,
deallocates all resources, but returns zero.
The patch adds -ENODEV as return value in this case.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
---
 drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c |    1 +
 1 file changed, 1 insertion(+)
David Miller - Feb. 3, 2013, 9:14 p.m.
From: Alexey Khoroshilov <khoroshilov@ispras.ru>
Date: Sat,  2 Feb 2013 02:09:19 +0400

> If stmmac_dvr_probe() fails in stmmac_pci_probe(), it breaks off initialization,
> deallocates all resources, but returns zero.
> The patch adds -ENODEV as return value in this case.
> 
> Found by Linux Driver Verification project (linuxtesting.org).
> 
> Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>

Applied to net-next, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c
index 064eaac..19b3a25 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c
@@ -102,6 +102,7 @@  static int stmmac_pci_probe(struct pci_dev *pdev,
 	priv = stmmac_dvr_probe(&(pdev->dev), &plat_dat, addr);
 	if (!priv) {
 		pr_err("%s: main driver probe failed", __func__);
+		ret = -ENODEV;
 		goto err_out;
 	}
 	priv->dev->irq = pdev->irq;