diff options
Diffstat (limited to 'cpukit/score/include')
-rw-r--r-- | cpukit/score/include/rtems/score/coremuteximpl.h | 1 | ||||
-rw-r--r-- | cpukit/score/include/rtems/score/threadqimpl.h | 7 |
2 files changed, 5 insertions, 3 deletions
diff --git a/cpukit/score/include/rtems/score/coremuteximpl.h b/cpukit/score/include/rtems/score/coremuteximpl.h index e3da6a7737..638cf8801c 100644 --- a/cpukit/score/include/rtems/score/coremuteximpl.h +++ b/cpukit/score/include/rtems/score/coremuteximpl.h @@ -253,6 +253,7 @@ RTEMS_INLINE_ROUTINE void _CORE_ceiling_mutex_Set_priority( if ( owner != NULL ) { _Thread_Wait_acquire( owner, queue_context ); + _Thread_queue_Context_clear_priority_updates( queue_context ); _Thread_Priority_change( owner, &the_mutex->Priority_ceiling, diff --git a/cpukit/score/include/rtems/score/threadqimpl.h b/cpukit/score/include/rtems/score/threadqimpl.h index bb35b1718b..760c83c658 100644 --- a/cpukit/score/include/rtems/score/threadqimpl.h +++ b/cpukit/score/include/rtems/score/threadqimpl.h @@ -87,9 +87,10 @@ RTEMS_INLINE_ROUTINE void _Thread_queue_Context_initialize( ) { #if defined(RTEMS_DEBUG) - memset( queue_context, 0, sizeof( *queue_context ) ); - queue_context->enqueue_callout = _Thread_queue_Enqueue_do_nothing; - queue_context->deadlock_callout = _Thread_queue_Deadlock_fatal; + memset( queue_context, 0x7f, sizeof( *queue_context ) ); +#if defined(RTEMS_SMP) + _Chain_Initialize_node( &queue_context->Lock_context.Wait.Gate.Node ); +#endif #else (void) queue_context; #endif |