]> git.baikalelectronics.ru Git - kernel.git/commitdiff
net: encx24j600: Add parentheses to fix precedence
authorValentina Goncharenko <goncharenko.vp@ispras.ru>
Thu, 1 Dec 2022 17:34:07 +0000 (20:34 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Dec 2022 10:30:45 +0000 (11:30 +0100)
[ Upstream commit 3bd5565dd1f70c3280614f4a9a35925966d80756 ]

In functions regmap_encx24j600_phy_reg_read() and
regmap_encx24j600_phy_reg_write() in the conditions of the waiting
cycles for filling the variable 'ret' it is necessary to add parentheses
to prevent wrong assignment due to logical operations precedence.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 74badaf8836f ("net: Microchip encx24j600 driver")
Signed-off-by: Valentina Goncharenko <goncharenko.vp@ispras.ru>
Reviewed-by: Pavan Chebbi <pavan.chebbi@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/microchip/encx24j600-regmap.c

index e2528633c09a15ed6dd7d4a24a4fec0afdea972b..8c07c3c3c00c82a3812319c0fd38305c1429446e 100644 (file)
@@ -364,7 +364,7 @@ static int regmap_encx24j600_phy_reg_read(void *context, unsigned int reg,
                goto err_out;
 
        usleep_range(26, 100);
-       while ((ret = regmap_read(ctx->regmap, MISTAT, &mistat) != 0) &&
+       while (((ret = regmap_read(ctx->regmap, MISTAT, &mistat)) != 0) &&
               (mistat & BUSY))
                cpu_relax();
 
@@ -402,7 +402,7 @@ static int regmap_encx24j600_phy_reg_write(void *context, unsigned int reg,
                goto err_out;
 
        usleep_range(26, 100);
-       while ((ret = regmap_read(ctx->regmap, MISTAT, &mistat) != 0) &&
+       while (((ret = regmap_read(ctx->regmap, MISTAT, &mistat)) != 0) &&
               (mistat & BUSY))
                cpu_relax();