From 7e19330e3075d79dbce5d8c126377d64c5301f85 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 19 May 2015 11:37:26 +0200 Subject: score: Fix assert --- cpukit/score/src/threaddispatchdisablelevel.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'cpukit/score/src/threaddispatchdisablelevel.c') diff --git a/cpukit/score/src/threaddispatchdisablelevel.c b/cpukit/score/src/threaddispatchdisablelevel.c index f78eb52016..9170f2eb09 100644 --- a/cpukit/score/src/threaddispatchdisablelevel.c +++ b/cpukit/score/src/threaddispatchdisablelevel.c @@ -113,8 +113,10 @@ uint32_t _Thread_Dispatch_decrement_disable_level( void ) _Giant_Do_release( cpu_self ); _Assert( - ( disable_level == 0 && _Giant.owner_cpu != cpu_self ) - || ( disable_level != 0 && _Giant.owner_cpu == cpu_self ) + ( disable_level == cpu_self->isr_nest_level + && _Giant.owner_cpu != cpu_self ) + || ( disable_level > cpu_self->isr_nest_level + && _Giant.owner_cpu == cpu_self ) ); _Profiling_Thread_dispatch_enable( cpu_self, disable_level ); -- cgit v1.2.3