Messages in this thread |  | | | Date | Thu, 1 Jun 2006 10:33:14 +0200 | | From | Ingo Molnar <> | | Subject | Re: 2.6.17-rc5-mm1 - output of lock validator |
| |
* Arjan van de Ven <arjan@infradead.org> wrote:
> > This is a serious bug in misrouted_irq(). disable_irq() is a > > software state and must be repsected. > > no that is not correct. The api is a mix kinda and broken; it really > DOES mean "shut this irq source off". That your handler won't get > called is an assumption! You do NOT disable your handler this way. > What we really need is a disable_irq_handler() api that does both!
well, the short-term answer is that Herbert's fix is correct and we need to do it even if it degrades the efficiency of irqfixup/irqpoll.
after this fix is applied, irqfixup/irqpoll should be enhanced to take advantage of disable_irq_handler().
in any case, correctness comes first - not honoring IRQ_DISABLED can lead to lockups.
Ingo - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |