linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC] PM: sleep: wakeirq: Fix a serious logical error in dev_pm_disarm_wake_irq()
@ 2024-09-28  9:26 Zijun Hu
  2024-09-28 10:50 ` Greg Kroah-Hartman
  2024-09-30 13:07 ` Johan Hovold
  0 siblings, 2 replies; 5+ messages in thread
From: Zijun Hu @ 2024-09-28  9:26 UTC (permalink / raw)
  To: Rafael J. Wysocki, Len Brown, Pavel Machek, Greg Kroah-Hartman
  Cc: Johan Hovold, Tony Lindgren, Zijun Hu, linux-pm, linux-kernel,
	Zijun Hu

IT is a serious logical error for dev_pm_disarm_wake_irq() not to disable
the wake irq enabled by dev_pm_arm_wake_irq(), fixed by simply correcting
the wrong if condition.

Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com>
---
List relevant commits as following:

johan+linaro@kernel.org  2023-07-13
Commit: 8527beb12087 ("PM: sleep: wakeirq: fix wake irq arming")

tony@atomide.com  2018-02-09
Commit: 69728051f5bf ("PM / wakeirq: Fix unbalanced IRQ enable for wakeirq")

The former commit fixes the later.
---
 drivers/base/power/wakeirq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/base/power/wakeirq.c b/drivers/base/power/wakeirq.c
index 5a5a9e978e85..8b15f9a0e8f9 100644
--- a/drivers/base/power/wakeirq.c
+++ b/drivers/base/power/wakeirq.c
@@ -356,7 +356,7 @@ void dev_pm_disarm_wake_irq(struct wake_irq *wirq)
 		disable_irq_wake(wirq->irq);
 
 		if (wirq->status & WAKE_IRQ_DEDICATED_ALLOCATED &&
-		    !(wirq->status & WAKE_IRQ_DEDICATED_ENABLED))
+		    (wirq->status & WAKE_IRQ_DEDICATED_ENABLED))
 			disable_irq_nosync(wirq->irq);
 	}
 }

---
base-commit: eb46cb321f1f3f3102f4ad3d61dd5c8c06cdbf17
change-id: 20240928-fix_wakeirq-276ff826970e

Best regards,
-- 
Zijun Hu <quic_zijuhu@quicinc.com>


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-10-10 13:24 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-28  9:26 [PATCH RFC] PM: sleep: wakeirq: Fix a serious logical error in dev_pm_disarm_wake_irq() Zijun Hu
2024-09-28 10:50 ` Greg Kroah-Hartman
2024-09-28 16:08   ` quic_zijuhu
2024-09-30 13:07 ` Johan Hovold
2024-10-10 13:24   ` Zijun Hu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).