[yocto] [PATCH 1/1] mips/rt: convert cascade interrupt to no threaded

Liming Wang liming.wang at windriver.com
Thu Aug 25 00:55:35 PDT 2011


preempt_rt kernel forces all irq interrupts to be threaded except some
special interrupts. This cascade interrupt belongs to the exceptions.

Because irq2 is initialized more early than "kthreadd" task,
which converts irq interrupt to threaded.

If this irq is threaded, kernel calls "try_to_wake_up" function
to wake up "kthreadd" task, but at that moment, "kthreadd" task hasn't been
initialized well, so try_to_wake_up wakes up a NULL task.

Signed-off-by: Liming Wang <liming.wang at windriver.com>
---
 arch/mips/kernel/i8259.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/mips/kernel/i8259.c b/arch/mips/kernel/i8259.c
index 5c74eb7..fb338db 100644
--- a/arch/mips/kernel/i8259.c
+++ b/arch/mips/kernel/i8259.c
@@ -295,6 +295,7 @@ static void init_8259A(int auto_eoi)
 static struct irqaction irq2 = {
 	.handler = no_action,
 	.name = "cascade",
+	.flags = IRQF_NO_THREAD,
 };
 
 static struct resource pic1_io_resource = {
-- 
1.7.0.4




More information about the yocto mailing list