diff mbox series

scsi: pm8001: Fix the warning when failing at the probe time

Message ID 20220715073221.3364198-1-zheyuma97@gmail.com
State New
Headers show
Series scsi: pm8001: Fix the warning when failing at the probe time | expand

Commit Message

Zheyu Ma July 15, 2022, 7:32 a.m. UTC
When the driver fails at chip_init(), we will get the following warning:

[    7.778705] remove_proc_entry: removing non-empty directory 'irq/21', leaking at least 'pm80xx0'
[    7.779414] WARNING: CPU: 0 PID: 290 at fs/proc/generic.c:720 remove_proc_entry+0x389/0x3f0
[    7.782793] RIP: 0010:remove_proc_entry+0x389/0x3f0
[    7.790813] Call Trace:
[    7.791284]  unregister_irq_proc+0x14c/0x170
[    7.793043]  pci_disable_device+0x1ad/0x380
[    7.793396]  pm8001_pci_probe+0x6d9/0xd40 [pm80xx]

Fix this by free the irq before disabling the pci device.

Signed-off-by: Zheyu Ma <zheyuma97@gmail.com>
---
 drivers/scsi/pm8001/pm8001_init.c | 1 +
 1 file changed, 1 insertion(+)
diff mbox series

Patch

diff --git a/drivers/scsi/pm8001/pm8001_init.c b/drivers/scsi/pm8001/pm8001_init.c
index 9b04f1a6a67d..71ade184ee6f 100644
--- a/drivers/scsi/pm8001/pm8001_init.c
+++ b/drivers/scsi/pm8001/pm8001_init.c
@@ -1159,6 +1159,7 @@  static int pm8001_pci_probe(struct pci_dev *pdev,
 err_out_shost:
 	scsi_remove_host(pm8001_ha->shost);
 err_out_ha_free:
+	free_irq(pm8001_ha->irq, sha);
 	pm8001_free(pm8001_ha);
 err_out_free:
 	kfree(sha);