diff options
author | Wei Yongjun <yongjun_wei@trendmicro.com.cn> | 2013-09-24 10:40:57 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-09-26 13:55:30 -0700 |
commit | 0a335b6d47f014c41b8a0c8cbdc6d4886c10f5d5 (patch) | |
tree | 0e3d2b6fc61d59aa8067626542987434a206d912 /drivers/misc | |
parent | 8d49751580db804a02caf6a5b7cebe2ff26c0d7e (diff) |
mmc: cb710: drop free_irq for devm_request_irq allocated irq
irq allocated with devm_request_irq should not be freed using
free_irq, because doing so causes a dangling pointer, and a
subsequent double free.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc')
-rw-r--r-- | drivers/misc/cb710/core.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/misc/cb710/core.c b/drivers/misc/cb710/core.c index 2e50f811ff5..fb397e7d1cc 100644 --- a/drivers/misc/cb710/core.c +++ b/drivers/misc/cb710/core.c @@ -176,7 +176,7 @@ static int cb710_suspend(struct pci_dev *pdev, pm_message_t state) { struct cb710_chip *chip = pci_get_drvdata(pdev); - free_irq(pdev->irq, chip); + devm_free_irq(&pdev->dev, pdev->irq, chip); pci_save_state(pdev); pci_disable_device(pdev); if (state.event & PM_EVENT_SLEEP) |