mirror of https://gitee.com/openkylin/linux.git
net: mii_timestamper: check NULL in unregister_mii_timestamper()
Callers of unregister_mii_timestamper() currently check for NULL value of mii_ts before calling it. Place the NULL check inside unregister_mii_timestamper() and update the callers accordingly. Signed-off-by: Calvin Johnson <calvin.johnson@oss.nxp.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com> Acked-by: Grant Likely <grant.likely@arm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
cf99686072
commit
b9926da003
|
@ -115,15 +115,13 @@ static int of_mdiobus_register_phy(struct mii_bus *mdio,
|
|||
else
|
||||
phy = get_phy_device(mdio, addr, is_c45);
|
||||
if (IS_ERR(phy)) {
|
||||
if (mii_ts)
|
||||
unregister_mii_timestamper(mii_ts);
|
||||
unregister_mii_timestamper(mii_ts);
|
||||
return PTR_ERR(phy);
|
||||
}
|
||||
|
||||
rc = of_mdiobus_phy_device_register(mdio, phy, child, addr);
|
||||
if (rc) {
|
||||
if (mii_ts)
|
||||
unregister_mii_timestamper(mii_ts);
|
||||
unregister_mii_timestamper(mii_ts);
|
||||
phy_device_free(phy);
|
||||
return rc;
|
||||
}
|
||||
|
|
|
@ -111,6 +111,9 @@ void unregister_mii_timestamper(struct mii_timestamper *mii_ts)
|
|||
struct mii_timestamping_desc *desc;
|
||||
struct list_head *this;
|
||||
|
||||
if (!mii_ts)
|
||||
return;
|
||||
|
||||
/* mii_timestamper statically registered by the PHY driver won't use the
|
||||
* register_mii_timestamper() and thus don't have ->device set. Don't
|
||||
* try to unregister these.
|
||||
|
|
|
@ -957,8 +957,7 @@ EXPORT_SYMBOL(phy_device_register);
|
|||
*/
|
||||
void phy_device_remove(struct phy_device *phydev)
|
||||
{
|
||||
if (phydev->mii_ts)
|
||||
unregister_mii_timestamper(phydev->mii_ts);
|
||||
unregister_mii_timestamper(phydev->mii_ts);
|
||||
|
||||
device_del(&phydev->mdio.dev);
|
||||
|
||||
|
|
Loading…
Reference in New Issue