Browse Source

net: phy: mdio-bcm-unimac: fix unsigned wrap-around when decrementing timeout

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@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Colin Ian King 8 years ago
parent
commit
51ce3e2145
1 changed files with 1 additions and 1 deletions
  1. 1 1
      drivers/net/phy/mdio-bcm-unimac.c

+ 1 - 1
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;