Messages in this thread | | | Date | Mon, 30 Nov 2009 15:24:40 +0100 (CET) | From | Thomas Gleixner <> | Subject | Re: Get rid of IRQF_DISABLED - (was [PATCH] genirq: warn about IRQF_SHARED|IRQF_DISABLED) |
| |
On Mon, 30 Nov 2009, Peter Zijlstra wrote: > On Mon, 2009-11-30 at 14:54 +0100, Thomas Gleixner wrote: > > The correct solution IMNSHO is to get rid of IRQF_DISABLED and run > > interrupt handlers always with interrupts disabled and require them > > not to reenable interrupts themself. > > > > Thoughts ? > > I'm all for removing that brain damage: > > http://lkml.org/lkml/2009/3/2/33
Darn, I knew that we discussed that before, but my memory tricked me into believing that it was years ago :)
> We should convert the broken hardware PIO and 3com interrupt things to > threaded interrupts, and simply mandate all IRQ handlers run short and > with IRQs disabled.
The ide stuff seems to be the only one which uses local_irq_enable_in_hardirq() so that at least it tripped over lockdep already.
What's the 3com wreckage about ?
> Except I guess that will upset some of the IRQ priority folks, like > power, where they (iirc) have a stack per irq prio level.
Is that actually used ? Ben ?
> But its not like the core kernel knows about these nesting rules and can > actually track any of that muck.
True.
tglx
| |