ixp4xx_eth: fix error check return value of platform_get_irq()
authorLv Ruyi <lv.ruyi@zte.com.cn>
Tue, 12 Apr 2022 08:51:26 +0000 (08:51 +0000)
committerJakub Kicinski <kuba@kernel.org>
Tue, 12 Apr 2022 21:59:42 +0000 (14:59 -0700)
platform_get_irq() return negative value on failure, so null check of
return value is incorrect. Fix it by comparing whether it is less than
zero.

Fixes: 9055a2f59162 ("ixp4xx_eth: make ptp support a platform driver")
Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Lv Ruyi <lv.ruyi@zte.com.cn>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20220412085126.2532924-1-lv.ruyi@zte.com.cn
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/xscale/ptp_ixp46x.c

index 1f382777aa5a8696a46bb79ac873370ba605965f..9abbdb71e629f28c2088ce84b87eb159742626a9 100644 (file)
@@ -271,7 +271,7 @@ static int ptp_ixp_probe(struct platform_device *pdev)
        ixp_clock.master_irq = platform_get_irq(pdev, 0);
        ixp_clock.slave_irq = platform_get_irq(pdev, 1);
        if (IS_ERR(ixp_clock.regs) ||
-           !ixp_clock.master_irq || !ixp_clock.slave_irq)
+           ixp_clock.master_irq < 0 || ixp_clock.slave_irq < 0)
                return -ENXIO;
 
        ixp_clock.caps = ptp_ixp_caps;