Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 58459a4e authored by Roel Kluin's avatar Roel Kluin Committed by Kumar Gala
Browse files

powerpc/82xx: kmalloc failure ignored in ep8248e_mdio_probe()



Prevent NULL dereference if kmalloc() fails. Also clean up if
of_mdiobus_register() returns an error.

Signed-off-by: default avatarRoel Kluin <roel.kluin@gmail.com>
Acked-by: default avatarScott Wood <scottwood@freescale.com>
Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
parent cb5485a0
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -132,12 +132,25 @@ static int __devinit ep8248e_mdio_probe(struct of_device *ofdev,
		return -ENOMEM;

	bus->irq = kmalloc(sizeof(int) * PHY_MAX_ADDR, GFP_KERNEL);
	if (bus->irq == NULL) {
		ret = -ENOMEM;
		goto err_free_bus;
	}

	bus->name = "ep8248e-mdio-bitbang";
	bus->parent = &ofdev->dev;
	snprintf(bus->id, MII_BUS_ID_SIZE, "%x", res.start);

	return of_mdiobus_register(bus, ofdev->node);
	ret = of_mdiobus_register(bus, ofdev->node);
	if (ret)
		goto err_free_irq;

	return 0;
err_free_irq:
	kfree(bus->irq);
err_free_bus:
	free_mdio_bitbang(bus);
	return ret;
}

static int ep8248e_mdio_remove(struct of_device *ofdev)