lkml.org 
[lkml]   [2021]   [Jun]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH net-next v8 07/15] net: mii_timestamper: check NULL in unregister_mii_timestamper()
    Date
    From: Calvin Johnson <calvin.johnson@oss.nxp.com>

    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>
    ---

    Changes in v8: None
    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 29f121cba314..d73c0570f19c 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 0ce5c7274930..e4b935b0b71b 100644
    --- a/drivers/net/phy/phy_device.c
    +++ b/drivers/net/phy/phy_device.c
    @@ -945,8 +945,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.31.1
    \
     
     \ /
      Last update: 2021-06-10 18:42    [W:4.067 / U:0.292 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site