summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/src/semflush.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-27 13:26:53 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-30 16:16:21 +0200
commit0e1d11f3f0f02768ced350fcb53056c55f0c545b (patch)
tree1f7062ab130bf78d924a7e34eec62864f3d8ae6e /cpukit/rtems/src/semflush.c
parentscore: Adjust thread queue layout (diff)
downloadrtems-0e1d11f3f0f02768ced350fcb53056c55f0c545b.tar.bz2
score: Add _Thread_queue_Context_set_MP_callout()
Add _Thread_queue_Context_set_MP_callout() to simplify _Thread_queue_Context_initialize(). This makes it possible to more easily add additional fields to Thread_queue_Context.
Diffstat (limited to 'cpukit/rtems/src/semflush.c')
-rw-r--r--cpukit/rtems/src/semflush.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/cpukit/rtems/src/semflush.c b/cpukit/rtems/src/semflush.c
index 73305354ec..07d4aa98b4 100644
--- a/cpukit/rtems/src/semflush.c
+++ b/cpukit/rtems/src/semflush.c
@@ -27,11 +27,7 @@ rtems_status_code rtems_semaphore_flush( rtems_id id )
Thread_queue_Context queue_context;
rtems_attribute attribute_set;
- the_semaphore = _Semaphore_Get(
- id,
- &queue_context,
- _Semaphore_MP_Send_object_was_deleted
- );
+ the_semaphore = _Semaphore_Get( id, &queue_context );
if ( the_semaphore == NULL ) {
#if defined(RTEMS_MULTIPROCESSING)
@@ -45,6 +41,11 @@ rtems_status_code rtems_semaphore_flush( rtems_id id )
attribute_set = the_semaphore->attribute_set;
+ _Thread_queue_Context_set_MP_callout(
+ &queue_context,
+ _Semaphore_MP_Send_object_was_deleted
+ );
+
#if defined(RTEMS_SMP)
if ( _Attributes_Is_multiprocessor_resource_sharing( attribute_set ) ) {
_ISR_lock_ISR_enable( &queue_context.Lock_context );