net: phy: fix uninitalized ethtool_wolinfo in phy_suspend
Callers of phy_ethtool_get_wol are supposed to provide a properly cleared struct ethtool_wolinfo. Therefore, fix phy_suspend to clear it before passing it to phy_ethtool_get_wol. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Reviewed-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
fcad3e6b57
commit
32fc3fd41a
1 changed files with 1 additions and 2 deletions
|
@ -683,10 +683,9 @@ EXPORT_SYMBOL(phy_detach);
|
||||||
int phy_suspend(struct phy_device *phydev)
|
int phy_suspend(struct phy_device *phydev)
|
||||||
{
|
{
|
||||||
struct phy_driver *phydrv = to_phy_driver(phydev->dev.driver);
|
struct phy_driver *phydrv = to_phy_driver(phydev->dev.driver);
|
||||||
struct ethtool_wolinfo wol;
|
struct ethtool_wolinfo wol = { .cmd = ETHTOOL_GWOL };
|
||||||
|
|
||||||
/* If the device has WOL enabled, we cannot suspend the PHY */
|
/* If the device has WOL enabled, we cannot suspend the PHY */
|
||||||
wol.cmd = ETHTOOL_GWOL;
|
|
||||||
phy_ethtool_get_wol(phydev, &wol);
|
phy_ethtool_get_wol(phydev, &wol);
|
||||||
if (wol.wolopts)
|
if (wol.wolopts)
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
|
|
Loading…
Reference in a new issue