[PATCH] scsi: qedf: Fix return values of the probe function

From: Zheyu Ma
Date: Wed Oct 20 2021 - 10:33:20 EST


qedf_set_fcoe_pf_param() propagates the return value to the probe
function __qedf_probe() and then hits local_pci_probe().

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@xxxxxxxxx>
---
drivers/scsi/qedf/qedf_main.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/qedf/qedf_main.c b/drivers/scsi/qedf/qedf_main.c
index 42d0d941dba5..52f2a52bea2c 100644
--- a/drivers/scsi/qedf/qedf_main.c
+++ b/drivers/scsi/qedf/qedf_main.c
@@ -3161,14 +3161,14 @@ static int qedf_set_fcoe_pf_param(struct qedf_ctx *qedf)

if (!qedf->p_cpuq) {
QEDF_ERR(&(qedf->dbg_ctx), "dma_alloc_coherent failed.\n");
- return 1;
+ return -ENOMEM;
}

rval = qedf_alloc_global_queues(qedf);
if (rval) {
QEDF_ERR(&(qedf->dbg_ctx), "Global queue allocation "
"failed.\n");
- return 1;
+ return rval;
}

/* Calculate SQ PBL size in the same manner as in qedf_sq_alloc() */
--
2.17.6