summaryrefslogtreecommitdiffstats
path: root/testsuites/sptests (follow)
Commit message (Collapse)AuthorAgeFilesLines
* tests: Remove configure feature checksSebastian Huber2018-05-021-3/+0
| | | | Update #3409.
* sptests/sp36: Remove obsolete test programSebastian Huber2018-04-225-212/+0
| | | | | | | | It tests the (never really working) strict order mutex option. That option does not exist any more. Mutexes by other good means (spmutex01, spsem*). Update #3406.
* configure: Add subdir-objects to all automake flags.Chris Johns2018-04-111-1/+1
| | | | | | | | | | | This option silences warning with automake-1.16.1 allowing us to upgrade to that version. This change has been tested with automake-1.12.6 and automake-1.16.1. It seems version 1.16.1 configures slower than 1.12.6 for the same source and BSP. The newer versions is 6 second slower. Close #3387.
* sptests: Fix AM_CONDITIONALSebastian Huber2018-04-101-2/+2
| | | | Update #3382.
* testsuite/sptests: Merged nested Makefile.am files into one Makefile.amChris Johns2018-04-10219-5001/+2257
| | | | | | This change is part of the testsuite Makefile.am reorganization. Update #3382
* config: Use new scheduler configuration definesSebastian Huber2018-03-122-4/+4
| | | | Update #3325.
* sptests/sp19: Fix test output methodsSebastian Huber2018-03-082-2/+14
| | | | Do not use fprintf() in non-fp tasks.
* Add a simple task console driverSebastian Huber2018-03-062-18/+3
| | | | Close #3320.
* spglobalcon02: New testSebastian Huber2018-03-066-0/+152
| | | | Update #3319.
* tests: Support %g print format specifierSebastian Huber2018-02-091-0/+1
|
* pipe: Use self-contained mutexSebastian Huber2018-02-021-50/+0
| | | | Update #2843.
* termios: Use self-contained objectsSebastian Huber2018-02-0219-298/+1
| | | | Update #2840.
* Add RTEMS thread APISebastian Huber2018-02-026-0/+281
| | | | Update #2843.
* score: Introduce new monotonic clockSebastian Huber2018-02-023-4/+3
| | | | | | | | Rename PER_CPU_WATCHDOG_MONOTONIC to PER_CPU_WATCHDOG_TICKS. Add new PER_CPU_WATCHDOG_MONOTONIC which is based on the system uptime (measured by timecounter). Close #3264.
* score: Optimize watchdog tickleSebastian Huber2018-02-021-1/+9
| | | | | | | Avoid unnecessary lock acquire/release operations. Get realtime via timecounter only if necessary. Update #3264.
* spsyslock01: Fix object compareSebastian Huber2018-02-021-5/+59
| | | | | | | Due to structure internal padding the use of memcmp() may lead to sporadic test failures. Update #3082.
* sp20: Fix print buffer sizeSebastian Huber2018-02-021-2/+2
| | | | | | | | | | There were two issues: 1. The buffer size must be divisible by 8 on 64-bit targets 2. It must be large enough to service the begin of start message. Update #3082.
* Remove make preinstallChris Johns2018-01-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A speciality of the RTEMS build system was the make preinstall step. It copied header files from arbitrary locations into the build tree. The header files were included via the -Bsome/build/tree/path GCC command line option. This has at least seven problems: * The make preinstall step itself needs time and disk space. * Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error. * There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult. * The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit. * An introduction of a new build system is difficult. * Include paths specified by the -B option are system headers. This may suppress warnings. * The parallel build had sporadic failures on some hosts. This patch removes the make preinstall step. All installed header files are moved to dedicated include directories in the source tree. Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc, etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g. erc32, imx, qoriq, etc. The new cpukit include directories are: * cpukit/include * cpukit/score/cpu/@RTEMS_CPU@/include * cpukit/libnetworking The new BSP include directories are: * bsps/include * bsps/@RTEMS_CPU@/include * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include There are build tree include directories for generated files. The include directory order favours the most general header file, e.g. it is not possible to override general header files via the include path order. The "bootstrap -p" option was removed. The new "bootstrap -H" option should be used to regenerate the "headers.am" files. Update #3254.
* spassoc01: Use floating-point taskSebastian Huber2018-01-191-0/+1
| | | | This test uses sprintf().
* sp08: Disable RTEMS_INTERRUPT_MASK testing when SMP enabledJoel Sherrill2017-12-081-2/+2
| | | | Updates #3000.
* sptests/sp51: Delete semaphore after useSebastian Huber2017-12-061-0/+3
| | | | This ensures that the configured semaphore maximum is not exceeded.
* libio: Use API mutexSebastian Huber2017-12-061-2/+2
|
* score: Use self-contained API mutexSebastian Huber2017-12-043-11/+8
| | | | | | | | | | Use a self-contained recursive mutex for API_Mutex_Control. The API mutexes are protected against asynchronous thread cancellation. Add dedicated mutexes for libatomic and TOD. Close #2629. Close #2630.
* sptests/splinkersets01: Fix 64-bit targetsSebastian Huber2017-11-241-4/+16
| | | | Update #3082.
* sapi: New implementation of rtems_panic()Sebastian Huber2017-11-221-10/+5
| | | | | | | | | | | | The previous rtems_panic() implementation was quite heavy weight. It depended on _exit() which calls the global destructors. It used fprintf(stderr, ...) for output which depends on an initialized console device and the complex fprintf(). Introduce a new fatal source RTEMS_FATAL_SOURCE_PANIC for rtems_panic() and output via vprintk(). Update #3244.
* score: Simplify global constructionSebastian Huber2017-11-227-3/+128
| | | | Update #3243.
* score: Optimize scheduler priority updatesSebastian Huber2017-11-201-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thread priority changes may append or prepend the thread to its priority group on the scheduler ready queue. Previously, a separate priority value and a prepend-it flag in the scheduler node were used to propagate a priority change to the scheduler. Now, use an append-it bit in the priority control and reduce the plain priority value to 63 bits. This change leads to a significant code size reduction (about 25%) of the SMP schedulers. The negligible increase of the standard priority scheduler is due to some additional shift operations (SCHEDULER_PRIORITY_MAP() and SCHEDULER_PRIORITY_UNMAP()). Before: text filename 136 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleblock.o 464 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimplechangepriority.o 24 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimple.o 108 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleschedule.o 292 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleunblock.o 264 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleyield.o text filename 280 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityblock.o 488 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerprioritychangepriority.o 200 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriority.o 164 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityschedule.o 328 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityunblock.o 200 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityyield.o text filename 24112 arm-rtems5/c/imx7/cpukit/score/src/libscore_a-scheduleredfsmp.o text filename 37204 sparc-rtems5/c/gr740/cpukit/score/src/libscore_a-scheduleredfsmp.o text filename 42236 powerpc-rtems5/c/qoriq_e6500_32/cpukit/score/src/libscore_a-scheduleredfsmp.o After: text filename 136 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleblock.o 272 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimplechangepriority.o 24 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimple.o 108 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleschedule.o 292 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleunblock.o 264 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulersimpleyield.o text filename 280 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityblock.o 488 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerprioritychangepriority.o 208 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriority.o 164 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityschedule.o 332 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityunblock.o 200 sparc-rtems5/c/erc32/cpukit/score/src/libscore_a-schedulerpriorityyield.o text filename 18860 arm-rtems5/c/imx7/cpukit/score/src/libscore_a-scheduleredfsmp.o text filename 28520 sparc-rtems5/c/gr740/cpukit/score/src/libscore_a-scheduleredfsmp.o text filename 32664 powerpc-rtems5/c/qoriq_e6500_32/cpukit/score/src/libscore_a-scheduleredfsmp.o
* cpukit: Add _arc4random_getentropy_fail.Christian Mauderer2017-11-171-1/+1
| | | | | | | Add a default implementation of _arc4random_getentropy_fail with an internal error. Update #3239.
* sptests/spversion01: Simplify configurationSebastian Huber2017-11-171-9/+2
| | | | Update #3199.
* rtems: rtems_semaphore_flush() with prio inheritSebastian Huber2017-11-161-11/+47
| | | | | | | | | The _Semaphore_Get_operations() must return the proper operations for priority inheritance semaphores. Add a test case for rtems_semaphore_flush() with priority inheritance. Close #3235.
* tests: Use ld to map (wrap) printf, puts and putchar to tester functions.Chris Johns2017-11-113-7/+1
| | | | | | | | | - Remove the macro defines and the need for tmacro.h by remapping the symbols using ld's wrap option. - Remove FLUSH_OUTPUT, it was empty. - Move rtems_test_exit to libmisc/testsupport as a function. Update #3199.
* tests: Use rtems_test_begin and rtems_test_end.Chris Johns2017-11-111-2/+2
| | | | | | Add a tests enum and move all test banner test to the library in libmisc. Update #3199.
* cpukit: Add a Version API.Chris Johns2017-11-106-0/+125
| | | | | | | | Provide functions to get the version string, major, minor and revision numbers and the version control identifer that is a unique tag for the version control system. Update #3199.
* sptests/spconsole01: New testSebastian Huber2017-11-086-0/+932
|
* score: _Chain_Insert_ordered_unprotected()Sebastian Huber2017-11-061-7/+12
| | | | | | Change the chain order relation to use a directly specified left hand side value. This is similar to _RBTree_Insert_inline() and helps the compiler to better optimize the code.
* tests: Use simple console driverSebastian Huber2017-11-06179-175/+187
| | | | | Update #3170. Update #3199.
* score: Add _IO_Printf() and _IO_Vprintf()Sebastian Huber2017-11-062-92/+150
| | | | | | | | | | | | | | The previous vprintk() implementation had a questionable licence header, lacks support for the 'z' and 'j' format specifiers, is not robust against invalid format specifiers, uses a global variable for output. Replace it with a stripped down version of the FreeBSD kernel kvprintf() function. The new implementation allows a low overhead rtems_snprintf() if necessary. Update #3199. Close #3216.
* tests: Use printf() instead of fprintf()Sebastian Huber2017-11-021-3/+0
| | | | | Update #3170. Update #3199.
* tests: Delete obsolete TESTS_USE_PRINTFSebastian Huber2017-11-021-1/+0
| | | | | Update #3170. Update #3199.
* testsuite: Add bspIo for a local printk.Chris Johns2017-10-301-0/+2
| | | | | Update #3170. Update #3199.
* tests: Remove TEST_INITSebastian Huber2017-10-28181-361/+0
| | | | | | | | The TEST_EXTERN is a used only by the system.h style tests and they use CONFIGURE_INIT appropriately. Update #3170. Update #3199.
* tests: Remove obsolete TESTS_USE_PRINTKSebastian Huber2017-10-2813-13/+0
| | | | | Update #3170. Update #3199.
* tests: Use rtems_test_printer in generalSebastian Huber2017-10-282-0/+3
| | | | | Update #3170. Update #3199.
* tests: Use rtems_test_printerSebastian Huber2017-10-281-3/+1
| | | | | Update #3170. Update #3199.
* tests: Move rtems_test_printer definitionSebastian Huber2017-10-281-2/+0
| | | | | | | Statically initialize it to use printk(). Update #3170. Update #3199.
* sptests/spscheduler01: Test POSIX set/get affinitySebastian Huber2017-10-282-23/+98
|
* score: Fix _Scheduler_Set_affinity()Sebastian Huber2017-10-281-1/+12
|
* rtems: rtems_clock_get_ticks_per_second()Sebastian Huber2017-10-251-0/+3
| | | | | | | Add macro implementation for rtems_clock_get_ticks_per_second() for C/C++ to avoid the function call overhead. A rtems_clock_get_ticks_per_second() is still provided for language bindings (e.g. Ada).
* score: Add _Watchdog_Nanoseconds_per_tickSebastian Huber2017-10-241-0/+1
| | | | | | | Move it from the configuration to a separate variable. Update #3117. Update #3182.
* score: _Watchdog_Is_far_future_monotonic_timespecSebastian Huber2017-10-241-0/+1
| | | | | Update #3117. Update #3182.