lkml.org 
[lkml]   [2021]   [Sep]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.13 105/380] scsi: qedi: Fix error codes in qedi_alloc_global_queues()
    Date
    From: Dan Carpenter <dan.carpenter@oracle.com>

    [ Upstream commit 4dbe57d46d54a847875fa33e7d05877bb341585e ]

    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.

    Link: https://lore.kernel.org/r/20210810084753.GD23810@kili
    Fixes: ace7f46ba5fd ("scsi: qedi: Add QLogic FastLinQ offload iSCSI driver framework.")
    Acked-by: Manish Rangankar <mrangankar@marvell.com>
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    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 edf915432704..99e1a323807d 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.30.2


    \
     
     \ /
      Last update: 2021-09-16 18:47    [W:4.035 / U:0.520 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site