diff --git a/[refs] b/[refs] index 837f755a41e5..abdfee8ca188 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4bcdf1d0b652bc33d52f2322b77463e4dc58abf8 +refs/heads/master: 05d74efa3c72a5c40b0edeb15856c0230126313b diff --git a/trunk/kernel/irq/manage.c b/trunk/kernel/irq/manage.c index 0fa3ce998ecb..3feab4ab6877 100644 --- a/trunk/kernel/irq/manage.c +++ b/trunk/kernel/irq/manage.c @@ -1106,8 +1106,7 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new) struct task_struct *t = new->thread; new->thread = NULL; - if (likely(!test_bit(IRQTF_DIED, &new->thread_flags))) - kthread_stop(t); + kthread_stop(t); put_task_struct(t); } out_mput: @@ -1217,8 +1216,7 @@ static struct irqaction *__free_irq(unsigned int irq, void *dev_id) #endif if (action->thread) { - if (!test_bit(IRQTF_DIED, &action->thread_flags)) - kthread_stop(action->thread); + kthread_stop(action->thread); put_task_struct(action->thread); }