Skip to content

Commit 7e9e05c

Browse files
committed
MIPS: IP22: Fix hang in power button interrupt handler
The hang was caused by the use of disable_irq() from the interrupt handler itself. Fixed by the use of disable_irq_nosync(). The issue was triggered by: commit 3aa551c Author: Thomas Gleixner <[email protected]> Date: Mon Mar 23 18:28:15 2009 +0100 genirq: add threaded interrupt handler support Signed-off-by: Ralf Baechle <[email protected]>
1 parent 950312c commit 7e9e05c

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

arch/mips/sgi-ip22/ip22-reset.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ static irqreturn_t panel_int(int irq, void *dev_id)
148148

149149
if (sgint->istat1 & SGINT_ISTAT1_PWR) {
150150
/* Wait until interrupt goes away */
151-
disable_irq(SGI_PANEL_IRQ);
151+
disable_irq_nosync(SGI_PANEL_IRQ);
152152
init_timer(&debounce_timer);
153153
debounce_timer.function = debounce;
154154
debounce_timer.expires = jiffies + 5;

0 commit comments

Comments
 (0)