diff mbox series

[resend] scsi: smartpqi: add missed free_irq in suspend

Message ID 20191203111337.13054-1-hslester96@gmail.com (mailing list archive)
State Deferred
Headers show
Series [resend] scsi: smartpqi: add missed free_irq in suspend | expand

Commit Message

Chuhong Yuan Dec. 3, 2019, 11:13 a.m. UTC
The driver calls request_irq in resume but does not call free_irq in
suspend.
Add the missed call to fix it.

Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Martin K. Petersen Dec. 10, 2019, 12:06 a.m. UTC | #1
> The driver calls request_irq in resume but does not call free_irq in
> suspend.
> Add the missed call to fix it.

Microsemi: Please review!
Don Brace Jan. 20, 2020, 4:24 p.m. UTC | #2
-----Original Message-----

The driver calls request_irq in resume but does not call free_irq in suspend.
Add the missed call to fix it.

Signed-off-by: Chuhong Yuan <hslester96@gmail.com>

NAK: free_irq is called in pqi_resume after checking for correct power state change. (in pqi_free_interrupts())

Thanks for your review,
Don


---
 drivers/scsi/smartpqi/smartpqi_init.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 7b7ef3acb504..2251c39afb1b 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -8078,6 +8078,8 @@ static __maybe_unused int pqi_suspend(struct pci_dev *pci_dev, pm_message_t stat
        pqi_ctrl_wait_for_pending_io(ctrl_info, NO_TIMEOUT);
        pqi_stop_heartbeat_timer(ctrl_info);

+       free_irq(pci_irq_vector(pci_dev, 0), 
+ &ctrl_info->queue_groups[0]);
+
        if (state.event == PM_EVENT_FREEZE)
                return 0;

--
2.24.0
diff mbox series

Patch

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 7b7ef3acb504..2251c39afb1b 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -8078,6 +8078,8 @@  static __maybe_unused int pqi_suspend(struct pci_dev *pci_dev, pm_message_t stat
 	pqi_ctrl_wait_for_pending_io(ctrl_info, NO_TIMEOUT);
 	pqi_stop_heartbeat_timer(ctrl_info);
 
+	free_irq(pci_irq_vector(pci_dev, 0), &ctrl_info->queue_groups[0]);
+
 	if (state.event == PM_EVENT_FREEZE)
 		return 0;