----- Forwarded message from Colin King <colin.k...@canonical.com> -----
Date: Tue, 8 Aug 2017 10:52:32 +0100 From: Colin King <colin.k...@canonical.com> To: Andrew Lunn <and...@lunn.ch>, Florian Fainelli <f.faine...@gmail.com>, netdev@vger.kernel.org Cc: kernel-janit...@vger.kernel.org, linux-ker...@vger.kernel.org Subject: [PATCH][next] net: phy: mdio-bcm-unimac: fix unsigned wrap-around when decrementing timeout X-Spam-Status: No, score=-7.4 required=4.0 tests=BAYES_00,RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD,T_HEADER_FROM_DIFFERENT_DOMAINS autolearn=ham autolearn_force=no version=3.4.0 From: Colin Ian King <colin.k...@canonical.com> 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.k...@canonical.com> --- 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 ----- End forwarded message ----- Hi Florian You might want to look at bcm_sf2_cfp_op() and bcm_sf2_cfp_rst(). Colin, do you have more of these patches? Have you done a tree wide search? Andrew