[PATCH][next] net: phy: mdio-bcm-unimac: fix unsigned wrap-around when decrementing timeout

From: Colin King
Date: Tue Aug 08 2017 - 05:52:40 EST


From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

Change post-decrement compare to pre-decrement to avoid an
unsigned integer wrap-around on timeout. This leads to the following
!timeout check to never to be true so -ETIMEDOUT is never returned.

Detected by CoverityScan, CID#1452623 ("Logically dead code")

Fixes: 69a60b0579a4 ("net: phy: mdio-bcm-unimac: factor busy polling loop")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
---
drivers/net/phy/mdio-bcm-unimac.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/phy/mdio-bcm-unimac.c b/drivers/net/phy/mdio-bcm-unimac.c
index 89425ca48412..73c5267a11fd 100644
--- a/drivers/net/phy/mdio-bcm-unimac.c
+++ b/drivers/net/phy/mdio-bcm-unimac.c
@@ -71,7 +71,7 @@ static int unimac_mdio_poll(void *wait_func_data)
return 0;

usleep_range(1000, 2000);
- } while (timeout--);
+ } while (--timeout);

if (!timeout)
return -ETIMEDOUT;
--
2.11.0