Re: [PATCH] net: macb: NULL out phydev after removing mdio bus
From: Nicolas Ferre
Date: Fri Oct 07 2016 - 12:22:33 EST
Le 07/10/2016 à 17:13, Xander Huff a écrit :
> From: Nathan Sullivan <nathan.sullivan@xxxxxx>
>
> To ensure the dev->phydev pointer is not used after becoming invalid in
> mdiobus_unregister, set it to NULL. This happens when removing the macb
> driver without first taking its interface down, since unregister_netdev
> will end up calling macb_close.
>
> Signed-off-by: Xander Huff <xander.huff@xxxxxx>
> Signed-off-by: Nathan Sullivan <nathan.sullivan@xxxxxx>
> Signed-off-by: Brad Mouring <brad.mouring@xxxxxx>
Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
> ---
> drivers/net/ethernet/cadence/macb.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
> index 63144bb..b32444a 100644
> --- a/drivers/net/ethernet/cadence/macb.c
> +++ b/drivers/net/ethernet/cadence/macb.c
> @@ -3117,6 +3117,7 @@ static int macb_remove(struct platform_device *pdev)
> if (dev->phydev)
> phy_disconnect(dev->phydev);
> mdiobus_unregister(bp->mii_bus);
> + dev->phydev = NULL;
> mdiobus_free(bp->mii_bus);
>
> /* Shutdown the PHY if there is a GPIO reset */
>
--
Nicolas Ferre