summaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorMiaoqian Lin <linmq006@gmail.com>2022-01-14 06:57:24 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-01-27 09:04:33 +0100
commit0f604bfdb56457c903005eb4e2a6d69c8b87811e (patch)
tree3772c7e45e99cdb7cd362dee4020fda58f8613de /drivers/net
parentfe02c43440d2ff26e33c523b3908c56ceae35390 (diff)
downloadlinux-stable-0f604bfdb56457c903005eb4e2a6d69c8b87811e.tar.gz
linux-stable-0f604bfdb56457c903005eb4e2a6d69c8b87811e.tar.bz2
linux-stable-0f604bfdb56457c903005eb4e2a6d69c8b87811e.zip
lib82596: Fix IRQ check in sni_82596_probe
commit 99218cbf81bf21355a3de61cd46a706d36e900e6 upstream. platform_get_irq() returns negative error number instead 0 on failure. And the doc of platform_get_irq() provides a usage example: int irq = platform_get_irq(pdev, 0); if (irq < 0) return irq; Fix the check of return value to catch errors correctly. Fixes: 115978859272 ("i825xx: Move the Intel 82586/82593/82596 based drivers") Signed-off-by: Miaoqian Lin <linmq006@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/ethernet/i825xx/sni_82596.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/i825xx/sni_82596.c b/drivers/net/ethernet/i825xx/sni_82596.c
index 43c1fd18670b..a990e606ecaa 100644
--- a/drivers/net/ethernet/i825xx/sni_82596.c
+++ b/drivers/net/ethernet/i825xx/sni_82596.c
@@ -122,9 +122,10 @@ static int sni_82596_probe(struct platform_device *dev)
netdevice->dev_addr[5] = readb(eth_addr + 0x06);
iounmap(eth_addr);
- if (!netdevice->irq) {
+ if (netdevice->irq < 0) {
printk(KERN_ERR "%s: IRQ not found for i82596 at 0x%lx\n",
__FILE__, netdevice->base_addr);
+ retval = netdevice->irq;
goto probe_failed;
}