diff options
author | Florian Fainelli <f.fainelli@gmail.com> | 2023-05-04 16:07:27 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2023-05-05 10:03:56 +0100 |
commit | 93e0401e0fc0c54b0ac05b687cd135c2ac38187c (patch) | |
tree | 7179e5741003b7553c0b462da7c2ba67448f648a /drivers | |
parent | 1e76f42779d6a2e45107b34d79d86a57b8077630 (diff) | |
download | lwn-93e0401e0fc0c54b0ac05b687cd135c2ac38187c.tar.gz lwn-93e0401e0fc0c54b0ac05b687cd135c2ac38187c.zip |
net: bcmgenet: Remove phy_stop() from bcmgenet_netif_stop()
The call to phy_stop() races with the later call to phy_disconnect(),
resulting in concurrent phy_suspend() calls being run from different
CPUs. The final call to phy_disconnect() ensures that the PHY is
stopped and suspended, too.
Fixes: c96e731c93ff ("net: bcmgenet: connect and disconnect from the PHY state machine")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/broadcom/genet/bcmgenet.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c index d937daa8ee88..f28ffc31df22 100644 --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c @@ -3465,7 +3465,6 @@ static void bcmgenet_netif_stop(struct net_device *dev) /* Disable MAC transmit. TX DMA disabled must be done before this */ umac_enable_set(priv, CMD_TX_EN, false); - phy_stop(dev->phydev); bcmgenet_disable_rx_napi(priv); bcmgenet_intr_disable(priv); |