On Thu, Mar 11, 2021 at 02:04:48PM +0200, Andy Shevchenko wrote: > 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?) It is the result of your suggestion[1]. So, I'll keep both Suggested-by and Reviewed-by with your name. [1] https://lore.kernel.org/linux-arm-kernel/20210218052654.28995-1-calvin.johnson@xxxxxxxxxxx/T/#m8d209f08f97fe1dc7249a63ad97b39311d14a9b3 Thanks Calvin > > > 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