scsi: mpt3sas: Fix double free warnings
authorSuganath Prabu S <suganath-prabu.subramani@broadcom.com>
Fri, 8 May 2020 11:07:38 +0000 (07:07 -0400)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 12 May 2020 03:08:42 +0000 (23:08 -0400)
Fix following warning from Smatch static analyser:

drivers/scsi/mpt3sas/mpt3sas_base.c:5256 _base_allocate_memory_pools()
warn: 'ioc->hpr_lookup' double freed

drivers/scsi/mpt3sas/mpt3sas_base.c:5256 _base_allocate_memory_pools()
warn: 'ioc->internal_lookup' double freed

Link: https://lore.kernel.org/r/20200508110738.30732-1-suganath-prabu.subramani@broadcom.com
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Suganath Prabu S <suganath-prabu.subramani@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/mpt3sas/mpt3sas_base.c

index 7fa3bdb..dc260fe 100644 (file)
@@ -4899,7 +4899,9 @@ _base_release_memory_pools(struct MPT3SAS_ADAPTER *ioc)
        }
 
        kfree(ioc->hpr_lookup);
+       ioc->hpr_lookup = NULL;
        kfree(ioc->internal_lookup);
+       ioc->internal_lookup = NULL;
        if (ioc->chain_lookup) {
                for (i = 0; i < ioc->scsiio_depth; i++) {
                        for (j = ioc->chains_per_prp_buffer;