Messages in this thread | | | Subject | Re: Ingo's realtime_preempt patch causes kernel oops | From | Daniel Walker <> | Date | Tue, 23 May 2006 08:33:44 -0700 |
| |
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
arch/arm/mach-at91rm9200/time.c
static struct irqaction at91rm9200_timer_irq = { .name = "at91_tick", .flags = SA_SHIRQ | SA_INTERRUPT, .handler = at91rm9200_timer_interrupt };
No SA_TIMER, and no SA_NODELAY , so i'd imagine it's is in a thread ..
Daniel
- 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/
| |