From 7f8a978e6b078492bbc657a3731d324011274f2b Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 16 Sep 2014 15:43:15 +0200 Subject: sptests/sp07: Minimize thread dispatch latency Do not use sprintf() in thread dispatch critical sections to avoid corruption of profiling samples. Update test to reflect thread the life cycle changes. --- testsuites/sptests/sp07/tdelete.c | 32 +++++--------------------------- 1 file changed, 5 insertions(+), 27 deletions(-) (limited to 'testsuites/sptests/sp07/tdelete.c') diff --git a/testsuites/sptests/sp07/tdelete.c b/testsuites/sptests/sp07/tdelete.c index 152db71dc4..a7136e2551 100644 --- a/testsuites/sptests/sp07/tdelete.c +++ b/testsuites/sptests/sp07/tdelete.c @@ -27,33 +27,11 @@ void Task_delete_extension( rtems_tcb *deleted_task ) { - char line[80]; - rtems_name name; + ssize_t task = task_number( deleted_task->Object.id ); - if ( task_number( running_task->Object.id ) > 0 ) { - name = Task_name[ task_number( running_task->Object.id ) ]; - sprintf( line, "TASK_DELETE - %c%c%c%c TASK_DELETE ", - (char)((name >> 24) & 0xff), - (char)((name >> 16) & 0xff), - (char)((name >> 8) & 0xff), - (char)(name & 0xff) - ); - buffered_io_add_string( line ); - } - if ( task_number( deleted_task->Object.id ) > 0 ) { - name = Task_name[ task_number( deleted_task->Object.id ) ]; -/* - * FIXME: There should be a public function to - * convert numeric rtems_names into char arrays - * c.f. rtems_name_to_characters() in rtems/rtems/support.inl - * but it's private. - */ - sprintf( line, "deleting - %c%c%c%c\n", - (char)((name >> 24) & 0xff), - (char)((name >> 16) & 0xff), - (char)((name >> 8) & 0xff), - (char)(name & 0xff) - ); - buffered_io_add_string( line ); + if (task > 0) { + ++Task_deleted[ task ]; } + + rtems_test_assert( running_task != deleted_task ); } -- cgit v1.2.3