diff options
Diffstat (limited to 'cpukit/score/cpu/lm32/irq.c')
-rw-r--r-- | cpukit/score/cpu/lm32/irq.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/cpukit/score/cpu/lm32/irq.c b/cpukit/score/cpu/lm32/irq.c index d2c38b9fd5..0dd2605e30 100644 --- a/cpukit/score/cpu/lm32/irq.c +++ b/cpukit/score/cpu/lm32/irq.c @@ -19,8 +19,9 @@ #include <rtems/system.h> #include <rtems/score/cpu.h> -#include <rtems/score/isr.h> #include <rtems/score/thread.h> +#include <rtems/score/isr.h> +#include <rtems/score/percpu.h> /* * This routine provides the RTEMS interrupt management. @@ -77,13 +78,7 @@ void __ISR_Handler(uint32_t vector, CPU_Interrupt_frame *ifr) if ( _ISR_Nest_level ) return; - if ( _Thread_Dispatch_disable_level ) { - _ISR_Signals_to_thread_executing = FALSE; - return; - } - - if ( _Context_Switch_necessary || _ISR_Signals_to_thread_executing ) { - _ISR_Signals_to_thread_executing = FALSE; + if ( _Context_Switch_necessary ) { /* save off our stack frame so the context switcher can get to it */ _exception_stack_frame = ifr; |