summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src/apimutexunlock.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/score/src/apimutexunlock.c')
-rw-r--r--cpukit/score/src/apimutexunlock.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/cpukit/score/src/apimutexunlock.c b/cpukit/score/src/apimutexunlock.c
index ca824a6e6c..7ebfb90946 100644
--- a/cpukit/score/src/apimutexunlock.c
+++ b/cpukit/score/src/apimutexunlock.c
@@ -20,7 +20,10 @@ void _API_Mutex_Unlock(
API_Mutex_Control *the_mutex
)
{
- _Thread_Disable_dispatch();
+ /* Dispatch is already disabled in SMP while lock is held. */
+ #if !defined(RTEMS_SMP)
+ _Thread_Disable_dispatch();
+ #endif
_CORE_mutex_Surrender(
&the_mutex->Mutex,
the_mutex->Object.id,