Commit 3e536cff authored by Colin Ian King's avatar Colin Ian King Committed by David S. Miller

net: phy: check if advertising is zero using linkmode_empty

A recent change modified variable advertising from a u32 to a link mode
array and left the u32 zero comparison, so essential we now have an array
being compared to null which is not the intention. Fix this by using the
call to linkmode_empty to check if advertising is all zero.

Detected by CoverityScan, CID#1475424 ("Array compared against 0")

Fixes: 3c1bcc86 ("net: ethernet: Convert phydev advertize and supported from u32 to link mode")
Signed-off-by: default avatarColin Ian King <colin.king@canonical.com>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 261501d9
...@@ -328,7 +328,7 @@ int phy_ethtool_ksettings_set(struct phy_device *phydev, ...@@ -328,7 +328,7 @@ int phy_ethtool_ksettings_set(struct phy_device *phydev,
if (autoneg != AUTONEG_ENABLE && autoneg != AUTONEG_DISABLE) if (autoneg != AUTONEG_ENABLE && autoneg != AUTONEG_DISABLE)
return -EINVAL; return -EINVAL;
if (autoneg == AUTONEG_ENABLE && advertising == 0) if (autoneg == AUTONEG_ENABLE && linkmode_empty(advertising))
return -EINVAL; return -EINVAL;
if (autoneg == AUTONEG_DISABLE && if (autoneg == AUTONEG_DISABLE &&
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment