summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/broadcom
diff options
context:
space:
mode:
authorPetr Malat <oss@malat.biz>2013-02-28 01:01:52 +0000
committerDavid S. Miller <davem@davemloft.net>2013-02-28 15:37:30 -0500
commitb2a431915d19893f047e0dd149d0c1b9d2a0b960 (patch)
treee3e507b869479b8ba8b09667b159c3dbc606cf4c /drivers/net/ethernet/broadcom
parentd521de04a73abb5e662c12eafa8c839aaaa6ae4f (diff)
phy: Fix phy_device_free memory leak
Fix memory leak in phy_device_free() for the case when phy_device* returned by phy_device_create() is not registered in the system. Bug description: phy_device_create() sets name of kobject using dev_set_name(), which allocates memory using kvasprintf(), but this memory isn't freed if the underlying device isn't registered properly, because kobject_cleanup() is not called in that case. This can happen (and actually is happening on our machines) if phy_device_register(), called by mdiobus_scan(), fails. Patch description: Embedded struct device is initialized in phy_device_create() and it counterpart phy_device_free() just drops one reference to the device, which leads to proper deinitialization including releasing the kobject name memory. Signed-off-by: Petr Malat <oss@malat.biz> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom')
0 files changed, 0 insertions, 0 deletions