Messages in this thread Patch in this message | | | Subject | Re: [-rt BUG] scheduling with irqs disabled: swapper | From | john stultz <> | Date | Mon, 29 May 2006 14:03:10 -0700 |
| |
On Sun, 2006-05-28 at 08:40 +0200, Ingo Molnar wrote: > * Steven Rostedt <rostedt@goodmis.org> wrote: > > > Thanks, but I was looking more into the code, and I'm wondering... > > Does this machine have "irqfixup" or "irqpoll" set in the kernel > > command line? > > > > I think that -rt doesn't support it yet. That is, it can call a > > handler from interrupt context, which should have been a thread. > > > > Let me know if that was the case. > > the backtrace shows misrouted_irq(), which is only called if "irqfixup" > is enabled. That indeed isnt supported in -rt yet.
Ugh. You and Steven are right. We've been bitten by this a few times, but we thought we got rid of that option on all of our boxes. I guess one slipped by.
Anyway, thanks for pointing that out. Would you consider a patch like the following so that folks don't continue to slip over this?
thanks -john
Index: rtdev/kernel/irq/spurious.c =================================================================== --- rtdev.orig/kernel/irq/spurious.c +++ rtdev/kernel/irq/spurious.c @@ -194,6 +194,11 @@ __setup("noirqdebug", noirqdebug_setup); static int __init irqfixup_setup(char *str) { +#ifdef CONFIG_PREEMPT_RT + printk(KERN_WARNING "irqfixup boot option not supported " + "w/ CONFIG_PREEMT_RT\n"); + return 1; +#endif irqfixup = 1; printk(KERN_WARNING "Misrouted IRQ fixup support enabled.\n"); printk(KERN_WARNING "This may impact system performance.\n"); @@ -204,6 +209,11 @@ __setup("irqfixup", irqfixup_setup); static int __init irqpoll_setup(char *str) { +#ifdef CONFIG_PREEMPT_RT + printk(KERN_WARNING "irqpoll boot option not supported " + "w/ CONFIG_PREEMT_RT\n"); + return 1; +#endif irqfixup = 2; printk(KERN_WARNING "Misrouted IRQ fixup and polling support " "enabled\n");
- 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/
| |