summaryrefslogtreecommitdiffstats
path: root/c/src/tests/sptests/sp04/tswitch.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/tests/sptests/sp04/tswitch.c')
-rw-r--r--c/src/tests/sptests/sp04/tswitch.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/c/src/tests/sptests/sp04/tswitch.c b/c/src/tests/sptests/sp04/tswitch.c
index 3d4d553431..1301507782 100644
--- a/c/src/tests/sptests/sp04/tswitch.c
+++ b/c/src/tests/sptests/sp04/tswitch.c
@@ -23,6 +23,10 @@
#include "system.h"
+struct taskSwitchLog taskSwitchLog[1000];
+int taskSwitchLogIndex;
+volatile int testsFinished;;
+
rtems_extension Task_switch(
rtems_tcb *unused,
rtems_tcb *heir
@@ -43,13 +47,13 @@ rtems_extension Task_switch(
status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time );
directive_failed( status, "rtems_clock_get" );
- put_name( Task_name[ index ], FALSE );
- print_time( "- ", &time, "\n" );
-
- if ( time.second >= 16 ) {
- puts( "*** END OF TEST 4 ***" );
- exit( 0 );
+ if (taskSwitchLogIndex < (sizeof taskSwitchLog / sizeof taskSwitchLog[0])) {
+ taskSwitchLog[taskSwitchLogIndex].taskIndex = index;
+ taskSwitchLog[taskSwitchLogIndex].when = time;
+ taskSwitchLogIndex++;
}
+ if ( time.second >= 16 )
+ testsFinished = 1;
break;
case 0: