From: Nick Garnett <nickg@ecoscentric.com>
To: "jiang jet" <jetjiang@hotmail.com>
CC: ecos-discuss@ecos.sourceware.org
Subject: Re: [ECOS] problem about interrupt end
Date: 23 Nov 2006 09:43:34 +0000
"jiang jet" <jetjiang@hotmail.com> writes:
> thank you for answering my question...
> I trace the interrupt progress, and I found the number is changed when
> the code is going from assembly code to c code(call isr through
> hal_interrupt_handlers)..
> it's the first time for timer to interrupt and then the program breaks
> down..
> do you mean there are some other interrupts or the same intererupts
> happened during this period(from system bootup to the time of the
> first timer interrupt happening)?
It may be the same interrupt happening again. If the interrupt
condition has not been cancelled, it is possible for the interrupt to
be re-delivered as soon as interrupts are re-enabled. If this is
before the stack has been totally unwound, then it will chew its way
down the stack and on into other data.
Note that this is only a suggestion, I have no idea whether this is
what is actually happening in your case.
> and I adjust the stack size ,but it seems it doesn't work :(
It is unlikely that this will have any effect, the stack corruption
will chew up any size of stack very quickly.
--
Nick Garnett eCos Kernel Architect
http://www.ecoscentric.com The eCos and RedBoot experts
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss