summaryrefslogtreecommitdiffstats
path: root/testsuites/sptests/spintrcritical18 (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update company nameSebastian Huber2023-05-201-1/+1
| | | | | The embedded brains GmbH & Co. KG is the legal successor of embedded brains GmbH.
* testsuites/sptests/sp[g-r]*: Change license to BSD-2Joel Sherrill2022-04-051-3/+22
| | | | Updates #3053.
* spintrcritical18: Use T_interrupt_test()Sebastian Huber2020-07-232-46/+127
|
* Canonicalize config.h includeSebastian Huber2020-04-161-1/+1
| | | | | | | | Use the following variant which was already used by most source files: #ifdef HAVE_CONFIG_H #include "config.h" #endif
* testsuite/sptests: Merged nested Makefile.am files into one Makefile.amChris Johns2018-04-101-22/+0
| | | | | | This change is part of the testsuite Makefile.am reorganization. Update #3382
* tests: Use simple console driverSebastian Huber2017-11-061-1/+1
| | | | | Update #3170. Update #3199.
* tests: Remove TEST_INITSebastian Huber2017-10-281-2/+0
| | | | | | | | The TEST_EXTERN is a used only by the system.h style tests and they use CONFIGURE_INIT appropriately. Update #3170. Update #3199.
* testsuite: Use printk for all test output where possible.Chris Johns2017-10-231-0/+2
| | | | | | | | | | - Remove the printf support leaving the direct printk support configured with TESTS_USE_PRINTK and all other output goes via a buffered vsniprintf call to printk. - Control the test's single init for functions and global data with TEST_INIT and not CONFIGURE_INIT. They are now separate. Updates #3170.
* tests: Rework interrupt critical testsSebastian Huber2014-09-101-12/+11
| | | | | | | | | This avoids test durations of more than one hour on fast targets, since fast targets can count a lot during one clock tick period, so the minor loop iteration count was quite high. Estimate now the test body duration to iterate only through the interesting time window. Add and use interrupt_critical_section_test().
* tests/sptests: Use <rtems/test.h>Sebastian Huber2014-03-251-3/+5
|
* Change all references of rtems.com to rtems.org.Chris Johns2014-03-211-1/+1
|
* score: Critical fix for thread dispatchingSebastian Huber2012-10-074-0/+210
The changes in _Thread_Dispatch() of commits dad36c52b8be5d7b46bc7af85655055db7208652 and d4dc7c8196355f08044e67a3f5c1e19485f17ff1 introduced a severe bug which destroys the real-time properties of RTEMS completely. Consider the following scenario. We have three tasks L (lowest priority), M (middle priority), and H (highest priority). Now let a thread dispatch from M to L happen. An interrupt occurs in _Thread_Dispatch() here: void _Thread_Dispatch( void ) { [...] post_switch: _ISR_Enable( level ); <-- INTERRUPT <-- AFTER INTERRUPT _Thread_Unnest_dispatch(); _API_extensions_Run_postswitch(); } The interrupt event makes task H ready. The interrupt code will see _Thread_Dispatch_disable_level > 0 and thus doesn't perform a _Thread_Dispatch(). Now we return to position "AFTER INTERRUPT". This means task L executes now although task H is ready! Task H will execute once someone calls _Thread_Dispatch().