diff --git a/arch/sparc/kernel/irq.c b/arch/sparc/kernel/irq.c index bcd678d8fc0d131cbdb9d5cbcd600dc3f5b3aea5..2e67ef6746944f54c14900a5688b3e243c0cd975 100644 --- a/arch/sparc/kernel/irq.c +++ b/arch/sparc/kernel/irq.c @@ -444,7 +444,7 @@ void leon_irq_queue_execute(void) if (likely(p_elem->handler)) { - if (p_elem->handler(p_elem->irq, p_elem->data)) + if (!p_elem->handler(p_elem->irq, p_elem->data)) leon_irq_queue(p_elem); else list_add_tail(&p_elem->handler_node,