Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1575265

[PATCH net-next 1/4] net: mv643xx_eth: Do not clobber PHY link outside of state machine

From Florian Fainelli <f.fainelli@gmail.com>
Newsgroups linux.kernel
Subject [PATCH net-next 1/4] net: mv643xx_eth: Do not clobber PHY link outside of state machine
Date 2017-02-07 01:00 +0100
Message-ID <t81mq-3ns-19@gated-at.bofh.it> (permalink)
References <t81mq-3ns-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Calling phy_read_status() means that we may call into
genphy_read_status() which in turn will use genphy_update_link() which
can make changes to phydev->link outside of the state machine's state
transitions. This is an invalid behavior that is now caught as of
811a919135b9 ("phy state machine: failsafe leave invalid RUNNING state")

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
 drivers/net/ethernet/marvell/mv643xx_eth.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
index 20cb7f0de601..25642dee49d3 100644
--- a/drivers/net/ethernet/marvell/mv643xx_eth.c
+++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
@@ -1504,9 +1504,7 @@ mv643xx_eth_get_link_ksettings_phy(struct mv643xx_eth_private *mp,
 	int err;
 	u32 supported, advertising;
 
-	err = phy_read_status(dev->phydev);
-	if (err == 0)
-		err = phy_ethtool_ksettings_get(dev->phydev, cmd);
+	err = phy_ethtool_ksettings_get(dev->phydev, cmd);
 
 	/*
 	 * The MAC does not support 1000baseT_Half.
-- 
2.9.3

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH net-next 0/4] net: Incorrect use of phy_read_status() Florian Fainelli <f.fainelli@gmail.com> - 2017-02-07 01:00 +0100
  [PATCH net-next 4/4] net: dsa: Do not clobber PHY link outside of state machine Florian Fainelli <f.fainelli@gmail.com> - 2017-02-07 01:00 +0100
    Re: [PATCH net-next 4/4] net: dsa: Do not clobber PHY link outside  of state machine Andrew Lunn <andrew@lunn.ch> - 2017-02-07 01:20 +0100
      RE: [PATCH net-next 4/4] net: dsa: Do not clobber PHY link outside  of state machine David Laight <David.Laight@ACULAB.COM> - 2017-02-07 12:50 +0100
        Re: [PATCH net-next 4/4] net: dsa: Do not clobber PHY link outside  of state machine Andrew Lunn <andrew@lunn.ch> - 2017-02-07 14:20 +0100
  [PATCH net-next 3/4] net: netcp: Do not clobber PHY link outside of state machine Florian Fainelli <f.fainelli@gmail.com> - 2017-02-07 01:00 +0100
  [PATCH net-next 2/4] net: pxa168_eth: Do not clobber PHY link outside of state machine Florian Fainelli <f.fainelli@gmail.com> - 2017-02-07 01:00 +0100
  [PATCH net-next 1/4] net: mv643xx_eth: Do not clobber PHY link outside of state machine Florian Fainelli <f.fainelli@gmail.com> - 2017-02-07 01:00 +0100
    Re: [PATCH net-next 1/4] net: mv643xx_eth: Do not clobber PHY link  outside of state machine Andrew Lunn <andrew@lunn.ch> - 2017-02-07 01:20 +0100
  Re: [PATCH net-next 0/4] net: Incorrect use of phy_read_status() David Miller <davem@davemloft.net> - 2017-02-07 20:00 +0100

csiph-web