All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Input: bf54x-keys - fix system hang when pressing a key
@ 2010-03-09 15:00 Mike Frysinger
  0 siblings, 0 replies; only message in thread
From: Mike Frysinger @ 2010-03-09 15:00 UTC (permalink / raw)
  To: linux-input, Dmitry Torokhov; +Cc: uclinux-dist-devel

We need to use the nosync version of disable_irq so that we don't hang in
the IRQ handler as we don't ACK the interrupt until later.  This used to
work regardless, but at some point, the IRQ behavior changed.  Not sure
when exactly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 drivers/input/keyboard/bf54x-keys.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/input/keyboard/bf54x-keys.c b/drivers/input/keyboard/bf54x-keys.c
index fe376a2..593c052 100644
--- a/drivers/input/keyboard/bf54x-keys.c
+++ b/drivers/input/keyboard/bf54x-keys.c
@@ -162,7 +162,7 @@ static irqreturn_t bfin_kpad_isr(int irq, void *dev_id)
 	input_sync(input);
 
 	if (bfin_kpad_get_keypressed(bf54x_kpad)) {
-		disable_irq(bf54x_kpad->irq);
+		disable_irq_nosync(bf54x_kpad->irq);
 		bf54x_kpad->lastkey = key;
 		mod_timer(&bf54x_kpad->timer,
 			  jiffies + bf54x_kpad->keyup_test_jiffies);
-- 
1.7.0.2


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2010-03-09 14:57 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-09 15:00 [PATCH] Input: bf54x-keys - fix system hang when pressing a key Mike Frysinger

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.