net: r6040: Return proper error for r6040_init_one
Axel Lin [Tue, 4 Jan 2011 22:40:04 +0000 (22:40 +0000)]
Return -ENOMEM instead of 0 for the case of mdiobus_alloc and kmalloc failure.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

drivers/net/r6040.c

index 0b014c8..27e6f6d 100644 (file)
@@ -1153,6 +1153,7 @@ static int __devinit r6040_init_one(struct pci_dev *pdev,
        lp->mii_bus = mdiobus_alloc();
        if (!lp->mii_bus) {
                dev_err(&pdev->dev, "mdiobus_alloc() failed\n");
+               err = -ENOMEM;
                goto err_out_unmap;
        }
 
@@ -1165,6 +1166,7 @@ static int __devinit r6040_init_one(struct pci_dev *pdev,
        lp->mii_bus->irq = kmalloc(sizeof(int)*PHY_MAX_ADDR, GFP_KERNEL);
        if (!lp->mii_bus->irq) {
                dev_err(&pdev->dev, "mii_bus irq allocation failed\n");
+               err = -ENOMEM;
                goto err_out_mdio;
        }