From 215fa231772beb5cfe5b0b47765a62b08301e8b6 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Mon, 4 Dec 2017 09:38:25 +0100 Subject: ada/tm04: Account for task delete behaviour change --- testsuites/ada/tmtests/tm04/tmtest.adb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/testsuites/ada/tmtests/tm04/tmtest.adb b/testsuites/ada/tmtests/tm04/tmtest.adb index 581a15a857..30ab443668 100644 --- a/testsuites/ada/tmtests/tm04/tmtest.adb +++ b/testsuites/ada/tmtests/tm04/tmtest.adb @@ -196,6 +196,15 @@ package body TMTEST is RTEMS_CALLING_OVERHEAD.SEMAPHORE_RELEASE ); + -- All low priority (non-preemptible) tasks are ready now. We must + -- prevent them from running (this would result in an invalid task exit), + -- since the rtems_task_delete() performs an implicit join. + for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT + loop + RTEMS.TASKS.SUSPEND( TMTEST.TASK_ID( INDEX ), STATUS ); + TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SUSPEND" ); + end loop; + for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT loop RTEMS.TASKS.DELETE( TMTEST.TASK_ID( INDEX ), STATUS ); -- cgit v1.2.3