2022-02-07 17:33:33

by Lizhe

[permalink] [raw]
Subject: [PATCH] PCI:pciehp: Replace request_threaded_irq with devm_request_threaded_irq

Memory allocated with this function is automatically
freed on driver detach

Signed-off-by: lizhe <[email protected]>
---
drivers/pci/hotplug/pciehp_hpc.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/pci/hotplug/pciehp_hpc.c b/drivers/pci/hotplug/pciehp_hpc.c
index 1c1ebf3dad43..aca59c6fdcbc 100644
--- a/drivers/pci/hotplug/pciehp_hpc.c
+++ b/drivers/pci/hotplug/pciehp_hpc.c
@@ -66,7 +66,7 @@ static inline int pciehp_request_irq(struct controller *ctrl)
}

/* Installs the interrupt handler */
- retval = request_threaded_irq(irq, pciehp_isr, pciehp_ist,
+ retval = devm_request_threaded_irq(irq, pciehp_isr, pciehp_ist,
IRQF_SHARED, "pciehp", ctrl);
if (retval)
ctrl_err(ctrl, "Cannot get irq %d for the hotplug controller\n",
@@ -78,8 +78,6 @@ static inline void pciehp_free_irq(struct controller *ctrl)
{
if (pciehp_poll_mode)
kthread_stop(ctrl->poll_thread);
- else
- free_irq(ctrl->pcie->irq, ctrl);
}

static int pcie_poll_cmd(struct controller *ctrl, int timeout)
--
2.25.1