summaryrefslogtreecommitdiffstats
path: root/testsuites/smptests/smpmutex01 (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-04-16Canonicalize config.h includeSebastian Huber1-1/+1
Use the following variant which was already used by most source files: #ifdef HAVE_CONFIG_H #include "config.h" #endif
2019-04-09rtems: Add rtems_scheduler_get_processor_maximum()Sebastian Huber1-2/+2
Add rtems_scheduler_get_processor_maximum() as a replacement for rtems_get_processor_count(). The rtems_get_processor_count() is a bit orphaned. Adopt it by the Scheduler Manager. The count is also misleading, since the processor set may have gaps and the actual count of online processors may be less than the value returned by rtems_get_processor_count(). Update #3732.
2019-04-09rtems: Add rtems_scheduler_get_processor()Sebastian Huber1-2/+2
Add rtems_scheduler_get_processor() as a replacement for rtems_get_current_processor(). The rtems_get_current_processor() is a bit orphaned. Adopt it by the Scheduler Manager. This is in line with the glibc sched_getcpu() function. Deprecate rtems_get_current_processor(). Update #3731.
2019-02-07score: Fix plain priority thread queues (SMP)Sebastian Huber1-0/+63
We must add/remove the priority queue to the FIFO of priority queues.
2018-12-04Spelling and grammar fixes in source code comments (GCI 2018)Marçal Comajoan Cara1-1/+1
2018-04-10testsuite/smptests: Merged nested Makefile.am files into one Makefile.amChris Johns1-19/+0
This change is part of the testsuite Makefile.am reorganization. Update #3382
2018-03-12config: Use new scheduler configuration definesSebastian Huber1-6/+6
Update #3325.
2017-11-16score: Fix priority ceiling updatesSebastian Huber1-2/+56
We must not clear the priority updates in _Thread_queue_Extract_locked() since this function is used by the priority ceiling surrender operations after the ceiling priority handover from the previous owner to the new owner. This is especially important in SMP configurations. Move the _Thread_queue_Context_clear_priority_updates() invocation to the callers. Close #3237.
2017-11-16score: Fix _Thread_queue_Flush_critical()Sebastian Huber1-33/+70
The thread queue extract operations performed by the _Thread_queue_Flush_critical() may result in a priority change of the thread queue owner. Carry out the scheduler priority update operation. This is especially important in SMP configurations. Close #3236.
2017-11-06tests: Use simple console driverSebastian Huber1-1/+1
Update #3170. Update #3199.
2017-10-28tests: Remove TEST_INITSebastian Huber1-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.
2017-10-23testsuite: Use printk for all test output where possible.Chris Johns1-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.
2017-02-14Rename CONFIGURE_SMP_MAXIMUM_PROCESSORSSebastian Huber1-1/+1
Rename CONFIGURE_SMP_MAXIMUM_PROCESSORS to CONFIGURE_MAXIMUM_PROCESSORS since the SMP part is superfluous. Update #2894.
2017-02-02Remove CONFIGURE_SMP_APPLICATIONSebastian Huber1-2/+0
Enable the SMP support if CONFIGURE_SMP_MAXIMUM_PROCESSORS > 1. Update #2893.
2016-11-02score: Yield support for new SMP helping protocolSebastian Huber1-0/+52
Update #2556.
2016-11-02score: Add new SMP scheduler helping protocolSebastian Huber1-2/+191
Update #2556.
2016-09-21score: Scheduler node awareness for thread queuesSebastian Huber1-24/+349
Maintain the priority of a thread for each scheduler instance via the thread queue enqueue, extract, priority actions and surrender operations. This replaces the primitive priority boosting. Update #2556.
2016-09-21rtems: Add rtems_task_get_priority()Sebastian Huber1-0/+16
Update #2556. Update #2784.
2016-09-21smptests/smpmutex01: Use test case functionsSebastian Huber1-2/+24
2016-09-21score: Rework thread priority managementSebastian Huber1-2/+1
Add priority nodes which contribute to the overall thread priority. The actual priority of a thread is now an aggregation of priority nodes. The thread priority aggregation for the home scheduler instance of a thread consists of at least one priority node, which is normally the real priority of the thread. The locking protocols (e.g. priority ceiling and priority inheritance), rate-monotonic period objects and the POSIX sporadic server add, change and remove priority nodes. A thread changes its priority now immediately, e.g. priority changes are not deferred until the thread releases its last resource. Replace the _Thread_Change_priority() function with * _Thread_Priority_perform_actions(), * _Thread_Priority_add(), * _Thread_Priority_remove(), * _Thread_Priority_change(), and * _Thread_Priority_update(). Update #2412. Update #2556.
2016-07-01rtems: Fix rtems_task_set_scheduler() APISebastian Huber1-1/+1
Task priorities are only valid within a scheduler instance. The rtems_task_set_scheduler() directive moves a task from one scheduler instance to another using the current priority of the thread. However, the current task priority of the source scheduler instance is undefined in the target scheduler instance. Add a third parameter to specify the priority. Close #2749.
2015-10-15Delete CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEMSebastian Huber1-2/+0
This define accidentally re-appeared.
2015-09-04score: Implement priority boostingSebastian Huber1-5/+56
2015-09-04score: Implement SMP-specific priority queueSebastian Huber4-0/+361