|
|
3c6e85 |
From f750ece8349ad34a3b3b92d768fe74710e4d07cb Mon Sep 17 00:00:00 2001
|
|
|
3c6e85 |
From: Himanshu Madhani <hmadhani@redhat.com>
|
|
|
3c6e85 |
Date: Thu, 1 Aug 2019 15:55:50 -0400
|
|
|
3c6e85 |
Subject: [PATCH 090/124] [scsi] scsi: qla2xxx: Fix a qla24xx_enable_msix()
|
|
|
3c6e85 |
error path
|
|
|
3c6e85 |
|
|
|
3c6e85 |
Message-id: <20190801155618.12650-91-hmadhani@redhat.com>
|
|
|
3c6e85 |
Patchwork-id: 267885
|
|
|
3c6e85 |
O-Subject: [RHEL 7.8 e-stor PATCH 090/118] scsi: qla2xxx: Fix a qla24xx_enable_msix() error path
|
|
|
3c6e85 |
Bugzilla: 1729270
|
|
|
3c6e85 |
RH-Acked-by: Jarod Wilson <jarod@redhat.com>
|
|
|
3c6e85 |
RH-Acked-by: Tony Camuso <tcamuso@redhat.com>
|
|
|
3c6e85 |
|
|
|
3c6e85 |
From: Bart Van Assche <bvanassche@acm.org>
|
|
|
3c6e85 |
|
|
|
3c6e85 |
Bugzilla 1729270
|
|
|
3c6e85 |
|
|
|
3c6e85 |
Make sure that the allocated interrupts are freed if allocating memory for
|
|
|
3c6e85 |
the msix_entries array fails.
|
|
|
3c6e85 |
|
|
|
3c6e85 |
Cc: Himanshu Madhani <hmadhani@marvell.com>
|
|
|
3c6e85 |
Cc: Giridhar Malavali <gmalavali@marvell.com>
|
|
|
3c6e85 |
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
|
|
|
3c6e85 |
Acked-by: Himanshu Madhani <hmadhani@marvell.com>
|
|
|
3c6e85 |
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
|
|
|
3c6e85 |
(cherry picked from commit 24afabdbd0b3553963a2bbf465895492b14d1107)
|
|
|
3c6e85 |
Signed-off-by: Himanshu Madhani <hmadhani@redhat.com>
|
|
|
3c6e85 |
Signed-off-by: Jan Stancek <jstancek@redhat.com>
|
|
|
3c6e85 |
---
|
|
|
3c6e85 |
drivers/scsi/qla2xxx/qla_isr.c | 6 +++++-
|
|
|
3c6e85 |
1 file changed, 5 insertions(+), 1 deletion(-)
|
|
|
3c6e85 |
|
|
|
3c6e85 |
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
|
|
|
3c6e85 |
index f099a812e29f..7c58e04c5d70 100644
|
|
|
3c6e85 |
--- a/drivers/scsi/qla2xxx/qla_isr.c
|
|
|
3c6e85 |
+++ b/drivers/scsi/qla2xxx/qla_isr.c
|
|
|
3c6e85 |
@@ -3495,7 +3495,7 @@ qla24xx_enable_msix(struct qla_hw_data *ha, struct rsp_que *rsp)
|
|
|
3c6e85 |
ql_log(ql_log_fatal, vha, 0x00c8,
|
|
|
3c6e85 |
"Failed to allocate memory for ha->msix_entries.\n");
|
|
|
3c6e85 |
ret = -ENOMEM;
|
|
|
3c6e85 |
- goto msix_out;
|
|
|
3c6e85 |
+ goto free_irqs;
|
|
|
3c6e85 |
}
|
|
|
3c6e85 |
ha->flags.msix_enabled = 1;
|
|
|
3c6e85 |
|
|
|
3c6e85 |
@@ -3578,6 +3578,10 @@ msix_register_fail:
|
|
|
3c6e85 |
|
|
|
3c6e85 |
msix_out:
|
|
|
3c6e85 |
return ret;
|
|
|
3c6e85 |
+
|
|
|
3c6e85 |
+free_irqs:
|
|
|
3c6e85 |
+ pci_free_irq_vectors(ha->pdev);
|
|
|
3c6e85 |
+ goto msix_out;
|
|
|
3c6e85 |
}
|
|
|
3c6e85 |
|
|
|
3c6e85 |
int
|
|
|
3c6e85 |
--
|
|
|
3c6e85 |
2.13.6
|
|
|
3c6e85 |
|