Messages in this thread | | | Subject | Re: Ingo's realtime_preempt patch causes kernel oops | From | Steven Rostedt <> | Date | Wed, 24 May 2006 11:52:23 -0400 |
| |
On Wed, 2006-05-24 at 08:32 -0700, Sven-Thorsten Dietrich wrote: > On Wed, 2006-05-24 at 15:13 +0200, Thomas Gleixner wrote: > > On Wed, 2006-05-24 at 08:55 -0400, Steven Rostedt wrote: > > > Thomas or Ingo, > > > > > > Maybe the handling of IRQs needs to handle the case that shared irq can > > > have both a NODELAY and a thread. The irq descriptor could have a > > > NODELAY set if any of the actions are NODELAY, but before calling the > > > interrupt handler (in interrupt context), check if the action is NODELAY > > > or not, and if not, wake up the thread if not done so already. > > > > As I said yesterday. You need a demultiplexer for such cases. > > > > Would IRQs stay masked until the thread has finished running?
I would say yes. But the system is basically broken if you have the same interrupt line that needs both to be threaded and NODELAY.
Basically, the best I can think to have for such a case, is all interrupt threads that have a shared NODELAY run at MAX_PRIO (99). So that they act like a NODELAY interrupt, in that they run over everything else, but they can still schedule.
-- Steve
- 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/
| |