This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ISR not causing an DSR in some rare conditions


On Thu, 2006-01-12 at 14:42 +0100, Stefan Sommerfeld wrote:
> Hi,
> >>
> >> i'm using XScale PXA270 processor with latest eCos and I think I found a
> >> problem with DSR's. I'm 100% sure that there must be a condition where 
> >> eCos
> >> not calls the DSR of an interrupt. I have a IRQ which comes 45 times a
> >> second on a system running at high load. After more then 10 hours one 
> >> DSR
> >> is missing. This is a bad situation which makes the system unstable.
> >>
> >> Is this problem known? Maybe it depends only on the architecture (ARM).
> >
> > Does the ISR reenable the interrupt? It could be the next interrupt
> > arrives before the DSR is called. In that case the DSR will be called
> > with the count value of 2.
> 
> No. The interrupts will not be disabled at any time. The interrupt from 
> this source will only be acknowledged in the isr function.
> 
> The functionality is simple. A hardware unit will be started and reports 
> the finish with an interrupt. I have made a counter on hardware unit start, 
> isr and dsr. After this long-run test, the dsr counter is one less than the 
> other counters.

So, what else is going on that creates your "high load?"  Possibly
there is some side effect [you may not even be aware of] that could
cause the DSR loss.

Have you checked to see if the DSR is ever called with a count other
than 1?

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]