summaryrefslogtreecommitdiffstats
path: root/testsuites/validation (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-03-13validation: Derive names from item UIDsSebastian Huber273-871/+799
Use the item UID converted to CamelCase for Doxygen group names and testsuite names. Update #3716.
2023-02-06validation: Improve IRQ handler dispatch testSebastian Huber1-143/+168
Clarify wording. Use a function wrapper for the SMP spurious interrupt setup. Update #3716.
2023-01-24tm27: Avoid function pointer castsSebastian Huber1-3/+7
Add TM27_USE_VECTOR_HANDLER to select the interrupt handler type used by the <tm27.h> implementation. Close #4820.
2022-12-02bsps/irq: Rename handler in dispatch tableSebastian Huber4-10/+10
The name handler table was a bit misleading after the last rework. Rename it to distach table. Update the documentation accordingly. Update #4769.
2022-11-11validation: Fix unused variable warningSebastian Huber1-2/+0
2022-11-11validation: Improve spurious interrupt test caseSebastian Huber3-29/+76
Use the tm27 support to test a spurious interrupt. This helps to run the validation test case on targets which have no software interrupt available for tests (for example riscv/PLIC/CLINT in the SMP configuration).
2022-11-09validation: Properly teardown test casesSebastian Huber3-3/+98
Make sure that the state of the testable interrupt vector is restored to the state at the test case begin.
2022-10-14validation: Use correct number of idle tasksSebastian Huber1-1/+16
Update #3716.
2022-10-14score: INTERNAL_ERROR_IDLE_THREAD_STACK_TOO_SMALLSebastian Huber3-0/+356
Ensure that the IDLE storage allocator did allocate a suffiently large area. Update #3835. Update #4524.
2022-10-14config: Add CONFIGURE_IDLE_TASK_STORAGE_SIZESebastian Huber7-1/+19
By default, allocate the IDLE task storage areas from the RTEMS Workspace. This avoids having to estimate the thread-local storage size in the default configuration. Add the application configuration option CONFIGURE_IDLE_TASK_STORAGE_SIZE to request a static allocation of the task storage area for IDLE tasks. Update #3835. Update #4524.
2022-10-14score: INTERNAL_ERROR_IDLE_THREAD_CREATE_FAILEDSebastian Huber4-0/+339
Add the INTERNAL_ERROR_IDLE_THREAD_CREATE_FAILED fatal error in case the creation of an idle thread fails. This may happen due to a failing create extension provided by the application.
2022-10-14config: Changeable size for IDLE stack allocatorSebastian Huber2-3/+3
Allow the IDLE stack allocator to change the stack size. This can be used by applications with a very dynamic thread-local storage size to adjust the thread storage area of the IDLE tasks dynamically. Update #4524.
2022-10-06validation: Fix wordingSebastian Huber1-6/+6
2022-09-28validation: Remove unused test suiteSebastian Huber1-94/+0
Update #3716.
2022-09-23rtems: Add rtems_clock_get_ticks_since_boot() functionSebastian Huber1-14/+61
This function was declared, however, a definition was missing. Add a validation test for it.
2022-09-12validation: Test deadlock detection special caseSebastian Huber1-0/+190
Update #3716.
2022-09-09validation: Fix integer type warningSebastian Huber1-1/+1
Update #4662.
2022-09-05validation: CONFIGURE_SCHEDULER_TABLE_ENTRIESSebastian Huber3-2/+119
Test this option in a configuration with only one processor. Update #3716.
2022-09-05validation: Refine basedefs specificationSebastian Huber1-0/+129
Update #3716.
2022-09-05validation: RegenerateSebastian Huber1-6/+6
Update #4702.
2022-08-31validation: Ignore array bounds warningsSebastian Huber1-0/+10
Update #4702.
2022-08-31validation: Move flush filter stop validationSebastian Huber4-106/+408
This gets rid of a cyclic dependency in the specification graph. Update #3716.
2022-08-31validation: Support a partial thread queue flushSebastian Huber7-31/+53
Update #3716.
2022-08-30validation: Fix use of uninitialized variablesSebastian Huber1-20/+16
Update #4662.
2022-08-10validation: Use T_report_hash_sha256_update()Sebastian Huber1-0/+2
Add the direct BSP character ouput to the report hash. Update #3716.
2022-08-04posix: Fix relative CLOCK_REALTIME sleepSebastian Huber1-32/+14
A relative CLOCK_REALTIME time out shall not be affected by CLOCK_REALTIME changes through clock_settime(). Since our CLOCK_REALTIME is basically just CLOCK_MONOTONIC plus an offset, we can simply use the CLOCK_MONOTONIC watchdog for relative CLOCK_REALTIME time outs. Update #4690.
2022-07-28score: Use priority inheritance for thread joinSebastian Huber3-385/+370
Threads may join the thread termination of another thread using the pthread_join() or rtems_task_delete() directives. The thread cancel operation used a special case priority boosting mechanism implemented by _Thread_Raise_real_priority(). The problem was that this approach * is not transitive, * does not account for priority adjustments of the calling task while waiting for the join, * does not support clustered scheduling, and * does not detect deadlocks. All these problems are fixed by using a priority inheritance thread queue for the join operation. Close #4679.
2022-07-14validation: SMP-specific spurious interrupt testSebastian Huber1-23/+125
Update #3716.
2022-07-07validation: Test thread idle bodiesSebastian Huber1-0/+194
Update #3716.
2022-07-07validation: Always test spurious interruptsSebastian Huber1-14/+10
Update #3716.
2022-07-07validation: Test thread free of FPU ownerSebastian Huber1-0/+74
Update #3716.
2022-07-07validation: Test scheduler detailSebastian Huber1-2/+135
This particular state during a reconsider help request scheduler operation was only covered by the existing test suites under some timing conditions. Update #3716.
2022-07-04build: Add RTEMS_GCOV_COVERAGE optionSebastian Huber2-2/+2
Update #4670.
2022-07-04gcov: Add functions to dump the gcov informationSebastian Huber1-1/+2
Update #4670.
2022-06-23score: Use right clock for threadq timeoutsSebastian Huber1-2/+8
Use CLOCK_REALTIME and CLOCK_MONOTONIC for relative thread queue timeouts instead of CLOCK_REALTIME_COARSE and CLOCK_MONOTONIC_COARSE. This fixes an issue with clock_nanosleep() in combination with clock_gettime(). Close #4669.
2022-06-08validation: Fix CallWithinISR()Sebastian Huber1-0/+2
Some BSPs require that Clear_tm27_intr() is called in the interrupt service routine. Update #3269.
2022-04-12validation: Avoid double fatal errorSebastian Huber1-0/+2
In the SMP_FATAL_MULTITASKING_START_ON_NOT_ONLINE_PROCESSOR test case, the boot processor ends up in the idle body. Do not issue a fatal error here and instead enter the idle loop. The secondary processor will terminate the system.
2022-04-12validation: Allow custom idle task bodySebastian Huber1-2/+8
2022-03-29rtems: Clarify scheduler of created taskSebastian Huber4-2/+205
2022-03-29validation: Use individual names for ident testsSebastian Huber14-41/+129
Make the task configuration reusable. Update #3716.
2022-03-24validation: Clarify commentSebastian Huber1-1/+1
2022-03-24smp: Add fatal errorSebastian Huber3-0/+333
Add SMP-specifc SMP_FATAL_MULTITASKING_START_ON_NOT_ONLINE_PROCESSOR fatal error. This fatal error helps to diagnose a broken SMP startup sequence. Without this error a context switch using the NULL pointer for the thread control block happens which may be difficult to debug.
2022-03-24validation: Test support functionsSebastian Huber2-0/+421
The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
2022-03-24validation: Test thread implementationSebastian Huber5-0/+624
The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
2022-03-24validation: Test SMP-specific aspectsSebastian Huber4-0/+964
The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
2022-03-24validation: Test scheduler operationsSebastian Huber4-0/+3848
The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
2022-03-24validation: Test C libary functionsSebastian Huber2-0/+464
The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
2022-03-24validation: Test <sys/lock.h> mutex operationsSebastian Huber1-0/+433
The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
2022-03-24validation: Test futex supportSebastian Huber2-0/+844
The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.
2022-03-24validation: Test status code directivesSebastian Huber4-0/+1601
The test source code is generated from specification items by the "./spec2modules.py" script contained in the git://git.rtems.org/rtems-central.git Git repository. Please read the "How-To" section in the "Software Requirements Engineering" chapter of the RTEMS Software Engineering manual to get more information about the process. Update #3716.