summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/score/include/rtems/score')
-rw-r--r--cpukit/score/include/rtems/score/coremuteximpl.h1
-rw-r--r--cpukit/score/include/rtems/score/threadqimpl.h7
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