Re: [PATCH net-next] net: phylink: Remove redundant netdev.phydev assignment

From: David Miller
Date: Thu Mar 01 2018 - 13:26:50 EST


From: Richard Cochran <richardcochran@xxxxxxxxx>
Date: Fri, 23 Feb 2018 07:25:46 -0800

> As a part of working on MII time stamping infrastructure, I was trying
> to figure out how netdev->phydev gets assigned, and I stumbled across
> this. Ever since the new phylink code came in, the field is assigned
> twice.
>
> The function, phylink_connect_phy(), calls
>
> phy_attach_direct()
> phylink_bringup_phy()
>
> and phy_attach_direct() sets
>
> dev->phydev = phydev;
>
> but phylink_bringup_phy() then sets the same field again:
>
> pl->netdev->phydev = phy;
>
> Similarly, the function, phylink_of_phy_connect(), calls
>
> of_phy_attach()
> phy_attach_direct()
> phylink_bringup_phy()
>
> The removal code is also duplicated:
>
> phylink_disconnect_phy()
> pl->netdev->phydev = NULL;
> phy_disconnect()
> phy_detach()
> phydev->attached_dev->phydev = NULL;
>
> This patch removes the redundant assignments, restricting manipulation
> of the netdev.phydev field to phy_attach_direct() and phy_detach().
>
> Signed-off-by: Richard Cochran <richardcochran@xxxxxxxxx>

Applied, thanks Richard.