cavium: Fix return values of the probe function
authorZheyu Ma <zheyuma97@gmail.com>
Mon, 18 Oct 2021 14:32:57 +0000 (14:32 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 19 Oct 2021 12:09:57 +0000 (13:09 +0100)
During the process of driver probing, the probe function should return < 0
for failure, otherwise, the kernel will treat value > 0 as success.

Signed-off-by: Zheyu Ma <zheyuma97@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cavium/thunder/nicvf_main.c

index d1667b7..a27227a 100644 (file)
@@ -1224,7 +1224,7 @@ static int nicvf_register_misc_interrupt(struct nicvf *nic)
        if (ret < 0) {
                netdev_err(nic->netdev,
                           "Req for #%d msix vectors failed\n", nic->num_vec);
-               return 1;
+               return ret;
        }
 
        sprintf(nic->irq_name[irq], "%s Mbox", "NICVF");
@@ -1243,7 +1243,7 @@ static int nicvf_register_misc_interrupt(struct nicvf *nic)
        if (!nicvf_check_pf_ready(nic)) {
                nicvf_disable_intr(nic, NICVF_INTR_MBOX, 0);
                nicvf_unregister_interrupts(nic);
-               return 1;
+               return -EIO;
        }
 
        return 0;