Skip to content

Commit e51d05f

Browse files
PCI: keystone: Use devm_request_irq() to free "ks-pcie-error-irq" on exit
Commit under Fixes introduced the IRQ handler for "ks-pcie-error-irq". The interrupt is acquired using "request_irq()" but is never freed if the driver exits due to an error. Although the section in the driver that invokes "request_irq()" has moved around over time, the issue hasn't been addressed until now. Fix this by using "devm_request_irq()" which automatically frees the interrupt if the driver exits. Fixes: 025dd3d ("PCI: keystone: Add error IRQ handler") Reported-by: Jiri Slaby <[email protected]> Closes: https://lore.kernel.org/r/[email protected] Signed-off-by: Siddharth Vadapalli <[email protected]> Signed-off-by: Manivannan Sadhasivam <[email protected]> Cc: [email protected] Link: https://patch.msgid.link/[email protected]
1 parent ffdd27d commit e51d05f

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

drivers/pci/controller/dwc/pci-keystone.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1201,8 +1201,8 @@ static int ks_pcie_probe(struct platform_device *pdev)
12011201
if (irq < 0)
12021202
return irq;
12031203

1204-
ret = request_irq(irq, ks_pcie_err_irq_handler, IRQF_SHARED,
1205-
"ks-pcie-error-irq", ks_pcie);
1204+
ret = devm_request_irq(dev, irq, ks_pcie_err_irq_handler, IRQF_SHARED,
1205+
"ks-pcie-error-irq", ks_pcie);
12061206
if (ret < 0) {
12071207
dev_err(dev, "failed to request error IRQ %d\n",
12081208
irq);

0 commit comments

Comments
 (0)