On Thu, Mar 11, 2021 at 8:21 AM Calvin Johnson <calvin.johnson@xxxxxxxxxxx> wrote: > > 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 FWIW, Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx> (Don't remember if it has been suggested by somebody, in that case perhaps Suggested-by?) > Signed-off-by: Calvin Johnson <calvin.johnson@xxxxxxxxxxx> > --- > > Changes in v7: > - check NULL in unregister_mii_timestamper() > > Changes in v6: None > Changes in v5: None > Changes in v4: None > Changes in v3: None > Changes in v2: None > > drivers/net/mdio/of_mdio.c | 6 ++---- > drivers/net/phy/mii_timestamper.c | 3 +++ > drivers/net/phy/phy_device.c | 3 +-- > 3 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/drivers/net/mdio/of_mdio.c b/drivers/net/mdio/of_mdio.c > index 612a37970f14..48b6b8458c17 100644 > --- a/drivers/net/mdio/of_mdio.c > +++ b/drivers/net/mdio/of_mdio.c > @@ -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; > } > diff --git a/drivers/net/phy/mii_timestamper.c b/drivers/net/phy/mii_timestamper.c > index b71b7456462d..51ae0593a04f 100644 > --- a/drivers/net/phy/mii_timestamper.c > +++ b/drivers/net/phy/mii_timestamper.c > @@ -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. > diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c > index f875efe7b4d1..9c5127405d91 100644 > --- a/drivers/net/phy/phy_device.c > +++ b/drivers/net/phy/phy_device.c > @@ -928,8 +928,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); > > -- > 2.17.1 > -- With Best Regards, Andy Shevchenko