• Ben Hutchings's avatar
    sh_eth: Fix ethtool operation crash when net device is down · 4f9dce23
    Ben Hutchings authored
    The driver connects and disconnects the PHY device whenever the
    net device is brought up and down.  The ethtool get_settings,
    set_settings and nway_reset operations will dereference a null
    or dangling pointer if called while it is down.
    
    I think it would be preferable to keep the PHY connected, but there
    may be good reasons not to.
    
    As an immediate fix for this bug:
    - Set the phydev pointer to NULL after disconnecting the PHY
    - Change those three operations to return -ENODEV while the PHY is
      not connected
    Signed-off-by: default avatarBen Hutchings <ben.hutchings@codethink.co.uk>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    4f9dce23
sh_eth.c 71.4 KB