[rtems commit] score: Fix ISR enable in _Thread_Dispatch_enable()
    Sebastian Huber 
    sebh at rtems.org
       
    Mon Aug 20 06:40:51 UTC 2018
    
    
  
Module:    rtems
Branch:    4.11
Commit:    dc6bd8bb665a6517c324e552745524b06fe6eef8
Changeset: http://git.rtems.org/rtems/commit/?id=dc6bd8bb665a6517c324e552745524b06fe6eef8
Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Mon Aug 20 08:40:24 2018 +0200
score: Fix ISR enable in _Thread_Dispatch_enable()
This bug had probably no effect since the interrupt enable is idempotent
on all CPU ports.
Close #3497.
---
 cpukit/score/include/rtems/score/threaddispatch.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/cpukit/score/include/rtems/score/threaddispatch.h b/cpukit/score/include/rtems/score/threaddispatch.h
index 4ef5538..322682d 100644
--- a/cpukit/score/include/rtems/score/threaddispatch.h
+++ b/cpukit/score/include/rtems/score/threaddispatch.h
@@ -314,9 +314,8 @@ RTEMS_INLINE_ROUTINE void _Thread_Dispatch_enable( Per_CPU_Control *cpu_self )
     } else {
       cpu_self->thread_dispatch_disable_level = 0;
       _Profiling_Thread_dispatch_enable( cpu_self, 0 );
+      _ISR_Enable_without_giant( level );
     }
-
-    _ISR_Enable_without_giant( level );
   } else {
     cpu_self->thread_dispatch_disable_level = disable_level - 1;
   }
    
    
More information about the vc
mailing list