RTEMS crash with error 18 (RTEMS_CALLED_FROM_ISR) again.

Nick Thomas nick.thomas at pixsan.com
Thu Feb 18 12:12:08 UTC 2010


> >
> > I also see that irq_stub.S is where the _ISR_Nest_level and
> > _Thread_Dispatch_disable_level is incremented/decremented.
> > This is PowerPC specific, is there a known bug in this code for
> 4.7.1?
> >
> >
> If it is it would be specific to that implementation.  Where is that in
> the source?  Can you compare it to another BSP?  For flow, I would look
> at what motorola_shared is using.  We know that worked for 4.7.x.

Irq_stub.S is in rtems-4.7.1/c/src/lib/libcpu/powerpc/old-exceptions.

> > There are some compiler conditionals in there, like PPC_USE_SPRG and
> > PPC_USE_DATA_CACHE. Not sure which of those is used in my system. I
> > will look through the assembly code :~ .
> >
> >
> If PPC_USE_SPRG is not in sync throughout the IRQ code and cpukit code,
> then that would be a possible cause.

I searched, and PPC_USE_SPRG is only used in two files, irq_stub.S and cpu.c
(also in rtems-4.7.1/c/src/lib/libcpu/powerpc/old-exceptions).

And, looking at the disassembly in GDB I can see that the PPC_USE_SPRG code
is present in both places, so there is no mismatch in the use of
PPC_USE_SPRG.





More information about the users mailing list