Re: [PATCH] qla2xxx: Fix memory leak in error path

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At 16:58 09/01/19, Anirban Chakraborty wrote:
>Here is the updated patch.
>Thanks,
>Anirban
>
>Signed-off-by: Anirban Chakraborty <anirban.chakraborty@xxxxxxxxxx>
>
>diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
>index df6e6a2..cbf377f 100644
>--- a/drivers/scsi/qla2xxx/qla_os.c
>+++ b/drivers/scsi/qla2xxx/qla_os.c
>@@ -1888,6 +1888,8 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct 
>pci_device_id *id)
> 		    "[ERROR] Failed to allocate memory for scsi_host\n");
> 
> 		ret = -ENOMEM;
>+		qla2x00_mem_free(ha);
>+		qla2x00_free_que(ha, req, rsp);
> 		goto probe_hw_failed;
> 	}
> 
>@@ -1917,14 +1919,13 @@ qla2x00_probe_one(struct pci_dev *pdev, const 
>struct pci_device_id *id)
> 	/* Set up the irqs */
> 	ret = qla2x00_request_irqs(ha, rsp);
> 	if (ret)
>-		goto probe_failed;
>-
>+		goto probe_init_failed;
> 	/* Alloc arrays of request and response ring ptrs */
> 	if (!qla2x00_alloc_queues(ha)) {
> 		qla_printk(KERN_WARNING, ha,
> 		"[ERROR] Failed to allocate memory for queue"
> 		" pointers\n");
>-		goto probe_failed;
>+		goto probe_init_failed;
> 	}
> 	ha->rsp_q_map[0] = rsp;
> 	ha->req_q_map[0] = req;
>@@ -1997,6 +1998,10 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct 
>pci_device_id *id)
> 
> 	return 0;
> 
>+probe_init_failed:
>+	qla2x00_free_que(ha, req, rsp);
>+	ha->max_queues = 0;
>+
> probe_failed:
> 	qla2x00_free_device(base_vha);
> 

It looks like good, Please add 
Reviewed-by:  Hisashi Hifumi <hifumi.hisashi@xxxxxxxxxxxxx>
if you wish.
Thanks.


--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux