Re: Ingo's realtime_preempt patch causes kernel oops

From: Daniel Walker
Date: Tue May 23 2006 - 11:33:02 EST

On Tue, 2006-05-23 at 10:19 -0400, Steven Rostedt wrote:

> The fault is at 0x40 and looking at profile_tick it calls
> user_mode(regs). user_mode(x) is defined in arm as
> (((regs)->ARM_cpsr & 0xf) == 0)
> And ARM_cpsr is uregs[16] So if arm has 4 byte words and regs was NULL,
> it would fault on 16*4 = 64 or 0x40
> It looks like the timer interrupt on this board is having a NULL regs
> passed to it when hard interrupts are threads. Which might mean that
> the timer interrupt is itself a thread.

Hmm, well usually ARM timer interrupts have the SA_TIMER flag .. In
realtime ARM changes SA_TIMER includes SA_NODELAY ..

In 2.6.17-rc4


static struct irqaction at91rm9200_timer_irq = {
.name = "at91_tick",
.handler = at91rm9200_timer_interrupt

No SA_TIMER, and no SA_NODELAY , so i'd imagine it's is in a thread ..


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at