mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 20:54:10 +08:00
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 3aa551c9b4
Author: Thomas Gleixner <tglx@linutronix.de>
Date: Mon Mar 23 18:28:15 2009 +0100
genirq: add threaded interrupt handler support
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
parent
950312ce22
commit
7e9e05cad9
@ -148,7 +148,7 @@ static irqreturn_t panel_int(int irq, void *dev_id)
|
||||
|
||||
if (sgint->istat1 & SGINT_ISTAT1_PWR) {
|
||||
/* Wait until interrupt goes away */
|
||||
disable_irq(SGI_PANEL_IRQ);
|
||||
disable_irq_nosync(SGI_PANEL_IRQ);
|
||||
init_timer(&debounce_timer);
|
||||
debounce_timer.function = debounce;
|
||||
debounce_timer.expires = jiffies + 5;
|
||||
|
Loading…
Reference in New Issue
Block a user