net: octeontx: Free allocated memory on error

In octeontx_smi_probe if an error is detected then memory that was
allocated is not freed. Small refactor of the code to use a common
return and free memory. Also return -ENOMEM for an allocation failure.

This issue was found by Smatch.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
This commit is contained in:
Andrew Goodbody 2025-08-05 16:45:49 +01:00 committed by Jerome Forissier
parent 62b4a482b9
commit 0ce7fef9e2

View File

@ -338,7 +338,8 @@ int octeontx_smi_probe(struct udevice *dev)
if (!bus || !priv) {
printf("Failed to allocate OcteonTX MDIO bus # %u\n",
dev_seq(dev));
return -1;
ret = -ENOMEM;
goto error_ret;
}
bus->read = octeontx_phy_read;
@ -355,9 +356,16 @@ int octeontx_smi_probe(struct udevice *dev)
ret = mdio_register(bus);
if (ret)
return ret;
goto error_ret;
}
return 0;
error_ret:
if (bus)
free(bus);
if (priv)
free(priv);
return ret;
}
static const struct udevice_id octeontx_smi_ids[] = {