2024-06-04 09:08:12

by Tomas Winkler

[permalink] [raw]
Subject: [char-misc-next v2] mei: me: release irq in mei_me_pci_resume error path

The mei_me_pci_resume doesn't release irq on the error path,
in case mei_start() fails.

Cc: <[email protected]>
Fixes: 33ec08263147 ("mei: revamp mei reset state machine")
Signed-off-by: Tomas Winkler <[email protected]>
---
V2: add Fixes reference and target to stable

drivers/misc/mei/pci-me.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/misc/mei/pci-me.c b/drivers/misc/mei/pci-me.c
index 7f59dd38c32f52dccf632fb4..6589635f8ba32b35fd28876d 100644
--- a/drivers/misc/mei/pci-me.c
+++ b/drivers/misc/mei/pci-me.c
@@ -385,8 +385,10 @@ static int mei_me_pci_resume(struct device *device)
}

err = mei_restart(dev);
- if (err)
+ if (err) {
+ free_irq(pdev->irq, dev);
return err;
+ }

/* Start timer if stopped in suspend */
schedule_delayed_work(&dev->timer_work, HZ);
--
2.45.0