Re: [PATCH][next] net: phy: dp83869: fix unsigned comparisons against less than zero values

From: Dan Murphy
Date: Fri Oct 02 2020 - 13:27:01 EST


Colin

On 10/2/20 11:54 AM, Colin King wrote:
From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

Currently the comparisons of u16 integers value and sopass_val with
less than zero for error checking is always false because the values
are unsigned. Fix this by making these variables int. This does not
affect the shift and mask operations performed on these variables

Addresses-Coverity: ("Unsigned compared against zero")
Fixes: 49fc23018ec6 ("net: phy: dp83869: support Wake on LAN")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
---
drivers/net/phy/dp83869.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/phy/dp83869.c b/drivers/net/phy/dp83869.c
index 0aee5f645b71..cf6dec7b7d8e 100644
--- a/drivers/net/phy/dp83869.c
+++ b/drivers/net/phy/dp83869.c
@@ -305,7 +305,7 @@ static int dp83869_set_wol(struct phy_device *phydev,
static void dp83869_get_wol(struct phy_device *phydev,
struct ethtool_wolinfo *wol)
{
- u16 value, sopass_val;
+ int value, sopass_val;
wol->supported = (WAKE_UCAST | WAKE_BCAST | WAKE_MAGIC |
WAKE_MAGICSECURE);

Wonder why this was not reported before as the previous comparison issue reported by zero day.

Acked-by: Dan Murphy <dmurphy@xxxxxx>