diff options
| author | Olof Johansson <olof@lixom.net> | 2011-12-22 09:22:58 -0800 |
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2011-12-22 09:22:58 -0800 |
| commit | 53bf82ce766b17436a6e9c672f9fa29702f3731e (patch) | |
| tree | 50547bbc8d5c9f9156f1220b712a99e48dbaf43f /kernel/irq/manage.c | |
| parent | 5e8d3183bb605a937fc89b857691f75682aa099e (diff) | |
| parent | 4a4de1d9b47156525ceb46c7faf6ae4042d90aa7 (diff) | |
Merge branch 'omap/fixes-hwmod' into next/fixes-non-critical
* omap/fixes-hwmod: (359 commits)
ARM: OMAP: hwmod data: fix the panic on Nokia RM-680 during boot
ARM: OMAP: hwmod data: fix iva and mailbox hwmods for OMAP 3
ARM: OMAP: rx51: fix USB
ARM: OMAP: mcbsp: Fix possible memory corruption
...
Diffstat (limited to 'kernel/irq/manage.c')
| -rw-r--r-- | kernel/irq/manage.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 0e2b179bc7b3..1da999f5e746 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c @@ -623,8 +623,9 @@ static irqreturn_t irq_nested_primary_handler(int irq, void *dev_id) static int irq_wait_for_interrupt(struct irqaction *action) { + set_current_state(TASK_INTERRUPTIBLE); + while (!kthread_should_stop()) { - set_current_state(TASK_INTERRUPTIBLE); if (test_and_clear_bit(IRQTF_RUNTHREAD, &action->thread_flags)) { @@ -632,7 +633,9 @@ static int irq_wait_for_interrupt(struct irqaction *action) return 0; } schedule(); + set_current_state(TASK_INTERRUPTIBLE); } + __set_current_state(TASK_RUNNING); return -1; } |
