diff options
author | Andrew Lunn <andrew@lunn.ch> | 2016-02-20 00:35:29 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-02-19 23:41:37 -0500 |
commit | 321b4d4bd12f90e7497c9ab057aafcc2649aa902 (patch) | |
tree | 303d777fcba3f7aedecce0b5d3c059f2997e9229 /net | |
parent | 2f86017748d96723372864c597d08d11c09dd759 (diff) | |
download | op-kernel-dev-321b4d4bd12f90e7497c9ab057aafcc2649aa902.zip op-kernel-dev-321b4d4bd12f90e7497c9ab057aafcc2649aa902.tar.gz |
phy: marvell/micrel: Fix Unpossible condition
commit 2b2427d06426 ("phy: micrel: Add ethtool statistics counters")
from Dec 30, 2015, leads to the following static checker
warning:
drivers/net/phy/micrel.c:609 kszphy_get_stat()
warn: unsigned 'val' is never less than zero.
drivers/net/phy/micrel.c
602 static u64 kszphy_get_stat(struct phy_device *phydev, int i)
603 {
604 struct kszphy_hw_stat stat = kszphy_hw_stats[i];
605 struct kszphy_priv *priv = phydev->priv;
606 u64 val;
607
608 val = phy_read(phydev, stat.reg);
609 if (val < 0) {
^^^^^^^
Unpossible!
610 val = UINT64_MAX;
611 } else {
612 val = val & ((1 << stat.bits) - 1);
613 priv->stats[i] += val;
614 val = priv->stats[i];
615 }
616
617 return val;
618 }
The same problem exists in the Marvell driver. Fix both.
Fixes: 2b2427d06426 ("phy: micrel: Add ethtool statistics counters")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Reported-by: Julia.Lawall <julia.lawall@lip6.fr>
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
0 files changed, 0 insertions, 0 deletions