summaryrefslogtreecommitdiffstats
path: root/testsuites/smptests/smp03/init.c
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/smptests/smp03/init.c')
-rw-r--r--testsuites/smptests/smp03/init.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/testsuites/smptests/smp03/init.c b/testsuites/smptests/smp03/init.c
index 40b7593aef..fd6f6d9c36 100644
--- a/testsuites/smptests/smp03/init.c
+++ b/testsuites/smptests/smp03/init.c
@@ -17,6 +17,12 @@
#include <stdio.h>
#include <inttypes.h>
+static void success(void)
+{
+ locked_printf( "*** END OF TEST SMP03 ***\n" );
+ rtems_test_exit( 0 );
+}
+
void Loop() {
volatile int i;
@@ -48,6 +54,10 @@ rtems_task Init(
locked_printf( "\n\n*** SMP03 TEST ***\n" );
+ if ( rtems_smp_get_processor_count() == 1 ) {
+ success();
+ }
+
/* Initialize the TaskRan array */
TaskRan[0] = true;
for ( i=1; i<rtems_smp_get_processor_count() ; i++ ) {
@@ -98,8 +108,7 @@ rtems_task Init(
TestFinished = false;
}
if (TestFinished) {
- locked_printf( "*** END OF TEST SMP03 ***\n" );
- rtems_test_exit( 0 );
+ success();
}
}