scsi: qla2xxx: Avoid fcport pointer dereference
authorNilesh Javali <njavali@marvell.com>
Wed, 7 Jun 2023 11:38:38 +0000 (17:08 +0530)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 15 Jun 2023 02:06:01 +0000 (22:06 -0400)
Klocwork reported warning of NULL pointer may be dereferenced.  The routine
exits when sa_ctl is NULL and fcport is allocated after the exit call thus
causing NULL fcport pointer to dereference at the time of exit.

To avoid fcport pointer dereference, exit the routine when sa_ctl is NULL.

Cc: stable@vger.kernel.org
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Link: https://lore.kernel.org/r/20230607113843.37185-4-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_edif.c

index ec0e202..26e6b3e 100644 (file)
@@ -2361,8 +2361,8 @@ qla24xx_issue_sa_replace_iocb(scsi_qla_host_t *vha, struct qla_work_evt *e)
        if (!sa_ctl) {
                ql_dbg(ql_dbg_edif, vha, 0x70e6,
                    "sa_ctl allocation failed\n");
-               rval =  -ENOMEM;
-               goto done;
+               rval = -ENOMEM;
+               return rval;
        }
 
        fcport = sa_ctl->fcport;