diff options
-rw-r--r-- | cpukit/score/src/threaddispatchdisablelevel.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/cpukit/score/src/threaddispatchdisablelevel.c b/cpukit/score/src/threaddispatchdisablelevel.c index ee1bfebe67..4686795bbb 100644 --- a/cpukit/score/src/threaddispatchdisablelevel.c +++ b/cpukit/score/src/threaddispatchdisablelevel.c @@ -88,16 +88,16 @@ uint32_t _Thread_Dispatch_decrement_disable_level( void ) _ISR_Disable_on_this_core( isr_level ); + disable_level = _Thread_Dispatch_disable_level; + --disable_level; + _Thread_Dispatch_disable_level = disable_level; + --level_lock->nest_level; if ( level_lock->nest_level == 0 ) { level_lock->owner_cpu = NO_OWNER_CPU; _SMP_lock_Release( &level_lock->lock ); } - disable_level = _Thread_Dispatch_disable_level; - --disable_level; - _Thread_Dispatch_disable_level = disable_level; - _ISR_Enable_on_this_core( isr_level ); return disable_level; |