Commit Graph
118 Commits
Author SHA1 Message Date
Sebastian Huber f6a38fb254 validation: Use T_report_hash_sha256_update()
Add the direct BSP character ouput to the report hash.

Update #3716.
2022-08-10 07:51:19 +02:00
Sebastian Huber c64c638f6d posix: Fix relative CLOCK_REALTIME sleep
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-08-04 07:55:30 +02:00
Sebastian Huber 31036f1dc8 score: Use priority inheritance for thread join
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-28 07:52:59 +02:00
Sebastian Huber cdc1eb7dcc validation: SMP-specific spurious interrupt test
Update #3716.
2022-07-14 10:46:43 +02:00
Sebastian Huber e506df58ec validation: Test thread idle bodies
Update #3716.
2022-07-07 09:00:48 +02:00
Sebastian Huber 588a07e1a8 validation: Always test spurious interrupts
Update #3716.
2022-07-07 09:00:46 +02:00
Sebastian Huber c75e03367a validation: Test thread free of FPU owner
Update #3716.
2022-07-07 09:00:44 +02:00
Sebastian Huber af90f783f0 validation: Test scheduler detail
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-07 09:00:29 +02:00
Sebastian Huber 5c13a96f36 build: Add RTEMS_GCOV_COVERAGE option
Update #4670.
2022-07-04 08:29:52 +02:00
Sebastian Huber 4f87edbb75 gcov: Add functions to dump the gcov information
Update #4670.
2022-07-04 08:29:52 +02:00
Sebastian Huber cd50bea678 score: Use right clock for threadq timeouts
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-23 09:20:11 +02:00
Sebastian Huber 9a69e43083 validation: Fix CallWithinISR()
Some BSPs require that Clear_tm27_intr() is called in the interrupt
service routine.

Update #3269.
2022-06-08 09:33:20 +02:00
Sebastian Huber 873e7dab34 validation: Avoid double fatal error
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-12 08:37:54 +02:00
Sebastian Huber ba36e4a236 validation: Allow custom idle task body 2022-04-12 08:37:54 +02:00
Sebastian Huber 9f9f1408a1 rtems: Clarify scheduler of created task 2022-03-29 17:19:42 +02:00
Sebastian Huber c2d7376f06 validation: Use individual names for ident tests
Make the task configuration reusable.

Update #3716.
2022-03-29 17:19:42 +02:00
Sebastian Huber 10d1de250a validation: Clarify comment 2022-03-24 11:20:26 +01:00
Sebastian Huber 36615183d6 smp: Add fatal error
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-24 11:10:49 +01:00
Sebastian Huber 14de245d05 validation: Test support functions
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-24 11:10:49 +01:00
Sebastian Huber ab2c04a86f validation: Test thread implementation
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-24 11:10:49 +01:00
Sebastian Huber 4a8f4b7202 validation: Test SMP-specific aspects
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-24 11:10:49 +01:00
Sebastian Huber ff50664c5c validation: Test scheduler operations
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-24 11:10:49 +01:00
Sebastian Huber 9f283e79f2 validation: Test C libary functions
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-24 11:10:49 +01:00
Sebastian Huber c24747a69b validation: Test <sys/lock.h> mutex operations
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-24 11:10:49 +01:00
Sebastian Huber 5fb7ce8835 validation: Test futex support
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-24 11:10:49 +01:00
Sebastian Huber fa660c4d5b validation: Test status code directives
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-24 11:10:49 +01:00
Sebastian Huber 7eb4fc8d43 validation: Test timecounter
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-24 11:10:49 +01:00
Sebastian Huber bc0cd6951e validation: Test object services
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-24 11:10:49 +01:00
Sebastian Huber c88db0f5fb validation: Test User Extensions Manager
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-24 11:10:49 +01:00
Frank Kühndel 565a7e6654 validation: Test Timer Manager
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-24 11:10:49 +01:00
Sebastian Huber 6b29390484 validation: Test Task Manager
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-24 11:10:49 +01:00
Sebastian Huber 32e472a765 validation: Test Signal Manager
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-24 11:10:49 +01:00
Sebastian Huber 43adf2ed59 validation: Test Semaphore Manager
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-24 11:10:49 +01:00
Sebastian Huber 1c87bb585f validation: Test Scheduler Manager
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-24 11:10:49 +01:00
Frank Kühndel 98091b6d88 validation: Test Rate Monotonic Manager
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-24 11:10:49 +01:00
Sebastian Huber 5c850245bf validation: Test Partition Manager
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-24 11:10:49 +01:00
Sebastian Huber 372ff260c8 validation: Test options
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-24 11:10:49 +01:00
Sebastian Huber b63084a916 validation: Test task modes
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-24 11:10:49 +01:00
Frank Kühndel 04fb7b6040 validation: Test Message Manager
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-24 11:10:49 +01:00
Sebastian Huber 134b4cb709 validation: Test IO Manager
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-24 11:10:49 +01:00
Sebastian Huber aebf6b6619 validation: Test Interrupt Manager
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-24 11:10:48 +01:00
Sebastian Huber 8d3fe04499 validation: Test Event Manager
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-24 11:10:48 +01:00
Sebastian Huber 32ca0c479e validation: Test rtems_cpu_usage_reset()
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-24 11:10:48 +01:00
Frank Kühndel 034d0b2f0b validation: Test Clock Manager
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-24 11:10:48 +01:00
Sebastian Huber b322a3ba44 validation: Test Cache Manager
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-24 11:10:48 +01:00
Frank Kühndel 99544e3f87 validation: Test <rtems/score/basedefs.h>
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-24 11:10:48 +01:00
Sebastian Huber 1410d5b8bf validation: Test Barrier Manager
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-24 11:10:48 +01:00
Sebastian Huber 0b26e0994c validation: Test attributes
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-24 11:10:48 +01:00
Sebastian Huber ca4d9ea23b validation: Test application configuration
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-24 11:10:48 +01:00
Sebastian Huber d9a07fd87a validation: Test object identification
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-24 11:10:48 +01:00