scsi: qla2xxx: Fix smatch warning in qla25xx_delete_{rsp|req}_que
authorHimanshu Madhani <himanshu.madhani@cavium.com>
Sun, 17 Dec 2017 00:05:09 +0000 (16:05 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 21 Mar 2018 11:06:45 +0000 (12:06 +0100)
commit 62aa281470fdb7c0796d63a1cc918a8c1f02dde2 upstream.

This patch fixes following warnings reported by smatch:

drivers/scsi/qla2xxx/qla_mid.c:586 qla25xx_delete_req_que()
error: we previously assumed 'req' could be null (see line 580)

drivers/scsi/qla2xxx/qla_mid.c:602 qla25xx_delete_rsp_que()
error: we previously assumed 'rsp' could be null (see line 596)

Fixes: 7867b98dceb7 ("scsi: qla2xxx: Fix memory leak in dual/target mode")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/scsi/qla2xxx/qla_mid.c

index 78df7cf..d77dde8 100644 (file)
@@ -582,8 +582,9 @@ qla25xx_delete_req_que(struct scsi_qla_host *vha, struct req_que *req)
                ret = qla25xx_init_req_que(vha, req);
                if (ret != QLA_SUCCESS)
                        return QLA_FUNCTION_FAILED;
+
+               qla25xx_free_req_que(vha, req);
        }
-       qla25xx_free_req_que(vha, req);
 
        return ret;
 }
@@ -598,8 +599,9 @@ qla25xx_delete_rsp_que(struct scsi_qla_host *vha, struct rsp_que *rsp)
                ret = qla25xx_init_rsp_que(vha, rsp);
                if (ret != QLA_SUCCESS)
                        return QLA_FUNCTION_FAILED;
+
+               qla25xx_free_rsp_que(vha, rsp);
        }
-       qla25xx_free_rsp_que(vha, rsp);
 
        return ret;
 }