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

From: Andrew Lunn
Date: Fri Oct 02 2020 - 13:39:45 EST


On Fri, Oct 02, 2020 at 12:26:49PM -0500, Dan Murphy wrote:
> 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.

I think it needs W=1

Andrew