diff mbox series

[1/2] scsi: qedi: Fix error codes in qedi_alloc_global_queues()

Message ID 20210810084753.GD23810@kili
State New
Headers show
Series [1/2] scsi: qedi: Fix error codes in qedi_alloc_global_queues() | expand

Commit Message

Dan Carpenter Aug. 10, 2021, 8:47 a.m. UTC
This function had some left over code that returned 1 on error instead
negative error codes.  Convert everything to use negative error codes.
The caller treats all non-zero returns the same so this does not affect
run time.

A couple places set "rc" instead of "status" so those error paths ended
up returning success by mistake.  Get rid of the "rc" variable and use
"status" everywhere.

Remove the bogus "status = 0" initialization, as a future proofing
measure so the compiler will warn about uninitialized error codes.

Fixes: ace7f46ba5fd ("scsi: qedi: Add QLogic FastLinQ offload iSCSI driver framework.")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
 drivers/scsi/qedi/qedi_main.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

Comments

Manish Rangankar Aug. 13, 2021, 8:47 a.m. UTC | #1
> -----Original Message-----

> From: Dan Carpenter <dan.carpenter@oracle.com>

> Sent: Tuesday, August 10, 2021 2:18 PM

> To: Nilesh Javali <njavali@marvell.com>; Manish Rangankar

> <manish.rangankar@cavium.com>

> Cc: GR-QLogic-Storage-Upstream <GR-QLogic-Storage-

> Upstream@marvell.com>; James E.J. Bottomley <jejb@linux.ibm.com>; Martin

> K. Petersen <martin.petersen@oracle.com>; Hannes Reinecke <hare@suse.de>;

> Arun Easi <arun.easi@cavium.com>; Adheer Chandravanshi

> <adheer.chandravanshi@qlogic.com>; Johannes Thumshirn

> <jthumshirn@suse.de>; linux-scsi@vger.kernel.org; kernel-

> janitors@vger.kernel.org

> Subject: [EXT] [PATCH 1/2] scsi: qedi: Fix error codes in

> qedi_alloc_global_queues()

> 

> External Email

> 

> ----------------------------------------------------------------------

> This function had some left over code that returned 1 on error instead negative

> error codes.  Convert everything to use negative error codes.

> The caller treats all non-zero returns the same so this does not affect run time.

> 

> A couple places set "rc" instead of "status" so those error paths ended up

> returning success by mistake.  Get rid of the "rc" variable and use "status"

> everywhere.

> 

> Remove the bogus "status = 0" initialization, as a future proofing measure so the

> compiler will warn about uninitialized error codes.

> 

> Fixes: ace7f46ba5fd ("scsi: qedi: Add QLogic FastLinQ offload iSCSI driver

> framework.")

> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

> ---

>  drivers/scsi/qedi/qedi_main.c | 14 +++++++-------

>  1 file changed, 7 insertions(+), 7 deletions(-)

> 

> diff --git a/drivers/scsi/qedi/qedi_main.c b/drivers/scsi/qedi/qedi_main.c index

> 0b0acb827071..e6dc0b495a82 100644

> --- a/drivers/scsi/qedi/qedi_main.c

> +++ b/drivers/scsi/qedi/qedi_main.c

> @@ -1621,7 +1621,7 @@ static int qedi_alloc_global_queues(struct qedi_ctx

> *qedi)  {

>  	u32 *list;

>  	int i;

> -	int status = 0, rc;

> +	int status;

>  	u32 *pbl;

>  	dma_addr_t page;

>  	int num_pages;

> @@ -1632,14 +1632,14 @@ static int qedi_alloc_global_queues(struct qedi_ctx

> *qedi)

>  	 */

>  	if (!qedi->num_queues) {

>  		QEDI_ERR(&qedi->dbg_ctx, "No MSI-X vectors available!\n");

> -		return 1;

> +		return -ENOMEM;

>  	}

> 

>  	/* Make sure we allocated the PBL that will contain the physical

>  	 * addresses of our queues

>  	 */

>  	if (!qedi->p_cpuq) {

> -		status = 1;

> +		status = -EINVAL;

>  		goto mem_alloc_failure;

>  	}

> 

> @@ -1654,13 +1654,13 @@ static int qedi_alloc_global_queues(struct qedi_ctx

> *qedi)

>  		  "qedi->global_queues=%p.\n", qedi->global_queues);

> 

>  	/* Allocate DMA coherent buffers for BDQ */

> -	rc = qedi_alloc_bdq(qedi);

> -	if (rc)

> +	status = qedi_alloc_bdq(qedi);

> +	if (status)

>  		goto mem_alloc_failure;

> 

>  	/* Allocate DMA coherent buffers for NVM_ISCSI_CFG */

> -	rc = qedi_alloc_nvm_iscsi_cfg(qedi);

> -	if (rc)

> +	status = qedi_alloc_nvm_iscsi_cfg(qedi);

> +	if (status)

>  		goto mem_alloc_failure;

> 

>  	/* Allocate a CQ and an associated PBL for each MSI-X

> --

> 2.20.1


Thanks,
Acked-by: Manish Rangankar <mrangankar@marvell.com>
Martin K. Petersen Aug. 16, 2021, 5:28 p.m. UTC | #2
Dan,

> This function had some left over code that returned 1 on error instead

> negative error codes.  Convert everything to use negative error codes.

> The caller treats all non-zero returns the same so this does not affect

> run time.


Applied 1+2 to 5.15/scsi-staging, thanks!

-- 
Martin K. Petersen	Oracle Linux Engineering
diff mbox series

Patch

diff --git a/drivers/scsi/qedi/qedi_main.c b/drivers/scsi/qedi/qedi_main.c
index 0b0acb827071..e6dc0b495a82 100644
--- a/drivers/scsi/qedi/qedi_main.c
+++ b/drivers/scsi/qedi/qedi_main.c
@@ -1621,7 +1621,7 @@  static int qedi_alloc_global_queues(struct qedi_ctx *qedi)
 {
 	u32 *list;
 	int i;
-	int status = 0, rc;
+	int status;
 	u32 *pbl;
 	dma_addr_t page;
 	int num_pages;
@@ -1632,14 +1632,14 @@  static int qedi_alloc_global_queues(struct qedi_ctx *qedi)
 	 */
 	if (!qedi->num_queues) {
 		QEDI_ERR(&qedi->dbg_ctx, "No MSI-X vectors available!\n");
-		return 1;
+		return -ENOMEM;
 	}
 
 	/* Make sure we allocated the PBL that will contain the physical
 	 * addresses of our queues
 	 */
 	if (!qedi->p_cpuq) {
-		status = 1;
+		status = -EINVAL;
 		goto mem_alloc_failure;
 	}
 
@@ -1654,13 +1654,13 @@  static int qedi_alloc_global_queues(struct qedi_ctx *qedi)
 		  "qedi->global_queues=%p.\n", qedi->global_queues);
 
 	/* Allocate DMA coherent buffers for BDQ */
-	rc = qedi_alloc_bdq(qedi);
-	if (rc)
+	status = qedi_alloc_bdq(qedi);
+	if (status)
 		goto mem_alloc_failure;
 
 	/* Allocate DMA coherent buffers for NVM_ISCSI_CFG */
-	rc = qedi_alloc_nvm_iscsi_cfg(qedi);
-	if (rc)
+	status = qedi_alloc_nvm_iscsi_cfg(qedi);
+	if (status)
 		goto mem_alloc_failure;
 
 	/* Allocate a CQ and an associated PBL for each MSI-X