[rtems commit] sptests/spintrcritical23: Fix warnings

Sebastian Huber sebh at rtems.org
Sat Mar 21 19:16:03 UTC 2015


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

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Sat Mar 21 20:14:45 2015 +0100

sptests/spintrcritical23: Fix warnings

---

 testsuites/sptests/spintrcritical23/init.c | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/testsuites/sptests/spintrcritical23/init.c b/testsuites/sptests/spintrcritical23/init.c
index ac9f1a1..89fea25 100644
--- a/testsuites/sptests/spintrcritical23/init.c
+++ b/testsuites/sptests/spintrcritical23/init.c
@@ -67,23 +67,21 @@ static void change_priority(rtems_id timer, void *arg)
   /* The arg is NULL */
   test_context *ctx = &ctx_instance;
   rtems_interrupt_lock_context lock_context;
-  rtems_task_priority priority_interrupt;
-  rtems_task_priority priority_task;
 
   rtems_interrupt_lock_acquire(&ctx->lock, &lock_context);
   if (
     ctx->priority_generation != ctx->tcb->priority_generation
       && scheduler_node_unchanged(ctx)
   ) {
-    ctx->done = true;
+    rtems_task_priority priority_interrupt;
+    rtems_task_priority priority_task;
+    rtems_task_priority previous;
+    rtems_status_code sc;
+
     priority_interrupt = ctx->priority_interrupt;
     priority_task = ctx->priority_task;
-  }
-  rtems_interrupt_lock_release(&ctx->lock, &lock_context);
 
-  if (ctx->done) {
-    rtems_status_code sc;
-    rtems_task_priority previous;
+    rtems_interrupt_lock_release(&ctx->lock, &lock_context);
 
     sc = rtems_task_set_priority(
       ctx->task_id,
@@ -92,6 +90,10 @@ static void change_priority(rtems_id timer, void *arg)
     );
     rtems_test_assert(sc == RTEMS_SUCCESSFUL);
     rtems_test_assert(previous == priority_task);
+
+    ctx->done = true;
+  } else {
+    rtems_interrupt_lock_release(&ctx->lock, &lock_context);
   }
 }
 




More information about the vc mailing list