Commit 4f463855 authored by Alexey Khoroshilov's avatar Alexey Khoroshilov Committed by David S. Miller

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

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: default avatarAlexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 33397a71
...@@ -102,6 +102,7 @@ static int stmmac_pci_probe(struct pci_dev *pdev, ...@@ -102,6 +102,7 @@ static int stmmac_pci_probe(struct pci_dev *pdev,
priv = stmmac_dvr_probe(&(pdev->dev), &plat_dat, addr); priv = stmmac_dvr_probe(&(pdev->dev), &plat_dat, addr);
if (!priv) { if (!priv) {
pr_err("%s: main driver probe failed", __func__); pr_err("%s: main driver probe failed", __func__);
ret = -ENODEV;
goto err_out; goto err_out;
} }
priv->dev->irq = pdev->irq; priv->dev->irq = pdev->irq;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment