Skip to content

Commit

Permalink
net: phy: check if advertising is zero using linkmode_empty
Browse files Browse the repository at this point in the history
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: 3c1bcc8 ("net: ethernet: Convert phydev advertize and supported from u32 to link mode")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Colin Ian King authored and David S. Miller committed Nov 13, 2018
1 parent 261501d commit 3e536cf
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/net/phy/phy.c
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,7 @@ int phy_ethtool_ksettings_set(struct phy_device *phydev,
if (autoneg != AUTONEG_ENABLE && autoneg != AUTONEG_DISABLE)
return -EINVAL;

if (autoneg == AUTONEG_ENABLE && advertising == 0)
if (autoneg == AUTONEG_ENABLE && linkmode_empty(advertising))
return -EINVAL;

if (autoneg == AUTONEG_DISABLE &&
Expand Down

0 comments on commit 3e536cf

Please sign in to comment.