mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-19 11:04:00 +08:00
scsi: qla2xxx: Fix a recently introduced memory leak
qla2x00_probe_one() allocates IRQs before it initializes rsp_q_map so
IRQs must be freed even if rsp_q_map allocation did not occur. This was
detected by kmemleak.
Fixes: 4fa1834559
("scsi: qla2xxx: Utilize pci_alloc_irq_vectors/pci_free_irq_vectors calls")
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Cc: Michael Hernandez <michael.hernandez@cavium.com>
Cc: Himanshu Madhani <himanshu.madhani@cavium.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: <stable@vger.kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-By: Himanshu Madhani <himanshu.madhani@cavium.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
773c7220e2
commit
27873de99f
@ -3237,7 +3237,7 @@ qla2x00_free_irqs(scsi_qla_host_t *vha)
|
||||
* from a probe failure context.
|
||||
*/
|
||||
if (!ha->rsp_q_map || !ha->rsp_q_map[0])
|
||||
return;
|
||||
goto free_irqs;
|
||||
rsp = ha->rsp_q_map[0];
|
||||
|
||||
if (ha->flags.msix_enabled) {
|
||||
@ -3257,6 +3257,7 @@ qla2x00_free_irqs(scsi_qla_host_t *vha)
|
||||
free_irq(pci_irq_vector(ha->pdev, 0), rsp);
|
||||
}
|
||||
|
||||
free_irqs:
|
||||
pci_free_irq_vectors(ha->pdev);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user