A few BSPs have buggy ISR processing.
Till Straumann
strauman at SLAC.Stanford.EDU
Wed Feb 12 02:12:16 UTC 2003
Sergei Organov wrote:
> While looking at ISR processing code in different BSPs I've noticed that a few
> BSPs have bugs in the code. All the observations are made in the latest
> 20030128 snapshot. The BSPs affected are:
>
> sh/sh7032
> sh/sh7045
> sh/sh7750
I have noticed the same (but only looked at 'sh')
-- Till
> c4x
> a29k
>
> The first 4 have the same bug:
>
> - if(( _Context_Switch_necessary) || (! _ISR_Signals_to_thread_executing))
> + if(( _Context_Switch_necessary) || (_ISR_Signals_to_thread_executing))
>
> Here are the relevant lines:
>
> rtems-ss-20030128/c/src/lib/libcpu/sh/sh7032/score/cpu_asm.c:305: if(( _Context_Switch_necessary) || (! _ISR_Signals_to_thread_executing))
> rtems-ss-20030128/c/src/lib/libcpu/sh/sh7045/score/cpu_asm.c:308: if(( _Context_Switch_necessary) || (! _ISR_Signals_to_thread_executing))
> rtems-ss-20030128/c/src/lib/libcpu/sh/sh7750/score/cpu_asm.c:305: if(( _Context_Switch_necessary) || (! _ISR_Signals_to_thread_executing))
> rtems-ss-20030128/cpukit/score/cpu/c4x/irq.c:77: if (_Context_Switch_necessary || !_ISR_Signals_to_thread_executing ) {
>
> The a29k fails to reset _ISR_Signals_to_thread_executing to FALSE here:
>
> rtems-ss-20030128/cpukit/score/cpu/a29k/cpu.c:274: (_Context_Switch_necessary || _ISR_Signals_to_thread_executing ))
>
>
More information about the users
mailing list