qla2x00_mem_alloc() returns 1 on success and -ENOMEM on failure.  On the
one hand the caller assumes non-zero is success but on the other hand
the caller also assumes that it returns an error code.

I've fixed it to return zero on success and a negative error code on
failure.  This matches the documentation as well.

Fixes: e315cd28b9ef ('[SCSI] qla2xxx: Code changes for qla data structure 
refactoring')
Signed-off-by: Dan Carpenter <dan.carpen...@oracle.com>

diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 89a53002b585..8d5a67fcffa1 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -2536,7 +2536,7 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct 
pci_device_id *id)
            ha->flags.enable_64bit_addressing ? "enable" :
            "disable");
        ret = qla2x00_mem_alloc(ha, req_length, rsp_length, &req, &rsp);
-       if (!ret) {
+       if (ret) {
                ql_log_pci(ql_log_fatal, pdev, 0x0031,
                    "Failed to allocate memory for adapter, aborting.\n");
 
@@ -3481,7 +3481,7 @@ qla2x00_mem_alloc(struct qla_hw_data *ha, uint16_t 
req_len, uint16_t rsp_len,
                    "loop_id_map=%p. \n", ha->loop_id_map);
        }
 
-       return 1;
+       return 0;
 
 fail_async_pd:
        dma_pool_free(ha->s_dma_pool, ha->ex_init_cb, ha->ex_init_cb_dma);
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to