OSDN Git Service

scsi: qla2xxx: Fix warning in qla2x00_async_iocb_timeout()
authorhimanshu.madhani@cavium.com <himanshu.madhani@cavium.com>
Tue, 16 Jan 2018 04:46:48 +0000 (20:46 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 17 Jan 2018 06:34:24 +0000 (01:34 -0500)
This patch fixes following Smatch warning:

drivers/scsi/qla2xxx/qla_init.c:130 qla2x00_async_iocb_timeout() error: we previously assumed 'fcport' could be null (see line 107)

Fixes: 5c25d451163c ("scsi: qla2xxx: Fix NULL pointer access for fcport structure")
Reported by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Quinn Tran <quinn.tran@cavium.com>
Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_init.c

index 9c08222..08ad1a6 100644 (file)
@@ -117,6 +117,8 @@ qla2x00_async_iocb_timeout(void *data)
 
        switch (sp->type) {
        case SRB_LOGIN_CMD:
+               if (!fcport)
+                       break;
                /* Retry as needed. */
                lio->u.logio.data[0] = MBS_COMMAND_ERROR;
                lio->u.logio.data[1] = lio->u.logio.flags & SRB_LOGIN_RETRIED ?
@@ -130,6 +132,8 @@ qla2x00_async_iocb_timeout(void *data)
                qla24xx_handle_plogi_done_event(fcport->vha, &ea);
                break;
        case SRB_LOGOUT_CMD:
+               if (!fcport)
+                       break;
                qlt_logo_completion_handler(fcport, QLA_FUNCTION_TIMEOUT);
                break;
        case SRB_CT_PTHRU_CMD: