[rtems commit] tmtests/tm27: Use scheduler lock

Sebastian Huber sebh at rtems.org
Mon Jun 22 10:10:15 UTC 2015


Module:    rtems
Branch:    master
Commit:    f9090ac82db79947c5d989d133cf148fbf385501
Changeset: http://git.rtems.org/rtems/commit/?id=f9090ac82db79947c5d989d133cf148fbf385501

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Fri Jun 19 21:38:20 2015 +0200

tmtests/tm27: Use scheduler lock

---

 testsuites/tmtests/tm27/task1.c | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/testsuites/tmtests/tm27/task1.c b/testsuites/tmtests/tm27/task1.c
index 3d02e91..d351b41 100644
--- a/testsuites/tmtests/tm27/task1.c
+++ b/testsuites/tmtests/tm27/task1.c
@@ -224,11 +224,10 @@ rtems_task Task_2(
   rtems_task_argument argument
 )
 {
+  Thread_Control *executing = _Thread_Get_executing();
   Scheduler_priority_Context *scheduler_context =
-    _Scheduler_priority_Get_context( _Scheduler_Get( _Thread_Get_executing() ) );
-#if defined(RTEMS_SMP)
-  rtems_interrupt_level level;
-#endif
+    _Scheduler_priority_Get_context( _Scheduler_Get( executing ) );
+  ISR_lock_Context lock_context;
 
 #if (MUST_WAIT_FOR_INTERRUPT == 1)
   while ( Interrupt_occurred == 0 );
@@ -257,18 +256,14 @@ rtems_task Task_2(
    *  Switch back to the other task to exit the test.
    */
 
-#if defined(RTEMS_SMP)
-  rtems_interrupt_disable(level);
-#endif
+  _Scheduler_Acquire( executing, &lock_context );
 
   _Thread_Executing =
         (Thread_Control *) _Chain_First(&scheduler_context->Ready[LOW_PRIORITY]);
 
   _Thread_Dispatch_necessary = 1;
 
-#if defined(RTEMS_SMP)
-  rtems_interrupt_enable(level);
-#endif
+  _Scheduler_Release( executing, &lock_context );
 
   _Thread_Dispatch();
 



More information about the vc mailing list