summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* score: Remove <limits.h> include from basedefs.hSebastian Huber2017-08-251-7/+0
| | | | Close #2132.
* heap: Fix integer typesSebastian Huber2017-08-221-3/+3
| | | | Update #3082.
* score: Add RTEMS_HAVE_MEMBER_SAME_TYPE()Sebastian Huber2017-07-312-2/+25
| | | | This fixes some "variably modified" warnings and a clang compile error.
* INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNITSebastian Huber2017-07-251-1/+2
| | | | | | Add new fatal error INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT. Update #3077.
* score: Add optional _CPU_Context_Destroy()Sebastian Huber2017-07-251-0/+7
| | | | Update #3077.
* score: Fix typoSebastian Huber2017-07-121-1/+1
| | | | Update #3059.
* Add interrupt vector set/get affinitySebastian Huber2017-07-121-0/+25
| | | | Close #3071.
* score: Fix set schedulerSebastian Huber2017-07-101-5/+13
| | | | | | | Ensure that the thread processor affinity fits the new scheduler instance. Update #3059.
* score: Add simple affinity support to EDF SMPSebastian Huber2017-07-102-12/+205
| | | | Update #3059.
* score: Pass scheduler nodes to processor allocatorSebastian Huber2017-07-071-18/+14
| | | | | | | This allows scheduler implementations to easily access scheduler-specific data. Update #3059.
* score: Add scheduler node to set affinity opSebastian Huber2017-07-073-0/+6
| | | | Update #3059.
* score: Fix default set affinitySebastian Huber2017-07-071-4/+3
| | | | | | | | The set of online processors must be a subset of the thread processor affinity for the schedulers without arbitrary processor affinity support to avoid problems in case of processor addition and removal. Update #3059.
* score: Introduce _SMP_Get_online_processors()Sebastian Huber2017-07-071-0/+9
| | | | Update #3059.
* score: Use processor mask for set affinitySebastian Huber2017-07-073-41/+13
| | | | Update #3059.
* score: Add processor set to scheduler contextSebastian Huber2017-07-072-20/+9
| | | | | | | Replace the simple processor count with the processor set owned by the scheduler instance. Update #3059.
* score: Move processor affinity to Thread_ControlSebastian Huber2017-07-075-61/+8
| | | | Update #3059.
* score: Add some processor mask functionsSebastian Huber2017-07-061-0/+99
| | | | Update #3059.
* score: Add processor mask to/from cpu_set_tSebastian Huber2017-07-061-2/+50
| | | | Update #3059.
* score: Use <sys/bitset.h> for Processor_maskSebastian Huber2017-07-062-51/+44
| | | | | | | | Implement the Processor_mask via <sys/bitset.h>. Provide _Processor_mask_To_uint32_t() to enable its use in device specific routines, e.g. interrupt affinity register in an interrupt controller. Update #3059.
* score: Add RTEMS_NO_INLINESebastian Huber2017-06-291-1/+11
| | | | Update #3056.
* score: Add SMP EDF schedulerSebastian Huber2017-06-291-0/+137
| | | | Update #3056.
* score: Add red-black tree node to Scheduler_NodeSebastian Huber2017-06-293-22/+24
| | | | | | | In SMP configurations, add a red-black tree node to Scheduler_Node to enable an EDF scheduler implementation. Update #3056.
* score: Remove rtems_ada_selfSebastian Huber2017-06-141-4/+0
| | | | | | This task variable is superfluous since we use thread-local storage now. Update #2289.
* i386: Support thread-local storage (TLS)Sebastian Huber2017-06-121-4/+19
| | | | Update #2468.
* Fix CPU_COPY() usageSebastian Huber2017-06-071-1/+1
| | | | | | | | The original CPU_COPY() support of Newlib <sys/cpuset.h> had the parameters in the wrong order. This is fixed in Newlib since 2017-05-22. Update #3023.
* SMP: Simplify SMP multicast actionsSebastian Huber2017-04-052-5/+34
|
* score: Fix scheduler yield in SMP configurationsSebastian Huber2017-03-072-20/+7
| | | | | | | | | Check that no ask help request is registered during unblock and yield scheduler operations. There is no need to ask for help if a scheduled thread yields, since this is already covered by the pre-emption detection. Update #2556.
* score: Add RTEMS_WEAK_ALIAS()Sebastian Huber2017-02-231-0/+10
|
* score: Move _Thread_Scheduler_ask_for_help()Sebastian Huber2017-02-031-2/+0
| | | | | Move _Thread_Scheduler_ask_for_help(), rename it to _Thread_Ask_for_help() and make it static.
* score: Improve scheduler helping protocolSebastian Huber2017-02-0311-132/+67
| | | | | | | | | | | Only register ask for help requests in the scheduler unblock and yield operations. The actual ask for help operation is carried out during _Thread_Do_dispatch() on a processor related to the thread. This yields a better separation of scheduler instances. A thread of one scheduler instance should not be forced to carry out too much work for threads on other scheduler instances. Update #2556.
* score: Add _Thread_queue_Object_nameSebastian Huber2017-01-315-34/+68
| | | | | | | | | | | | | Add the special thread queue name _Thread_queue_Object_name to mark thread queues embedded in an object with identifier. Using the special thread state STATES_THREAD_QUEUE_WITH_IDENTIFIER is not reliable for this purpose since the thread wait information and thread state are protected by different SMP locks in separate critical sections. Remove STATES_THREAD_QUEUE_WITH_IDENTIFIER. Add and use _Thread_queue_Object_initialize(). Update #2858.
* score: Fix _Thread_Initialize()Sebastian Huber2017-01-311-0/+3
|
* score: Fix unused parameter warningSebastian Huber2017-01-301-0/+2
| | | | Close #2890.
* score: Clarify _Heap_Extend()Sebastian Huber2017-01-271-5/+6
| | | | Update #1747.
* score: Fix typoSebastian Huber2017-01-271-1/+1
|
* score: Fix user extensions orderSebastian Huber2017-01-262-4/+4
| | | | | | | | | | | Use forward and reverse order for initial and dynamic extensions. This is the behaviour documented in the C Users Guide. Change thread terminate order to backward to be in line with the thread delete order. Change fatal error order to forward to ensure that initial extensions are called first due the peculiar execution context of fatal error extensions, see _Terminate() documentation. Update #2692.
* score: Delete _CPU_Context_Fp_start()Sebastian Huber2017-01-261-16/+0
| | | | | | | | | | Since the FP area pointer is passed by reference in _CPU_Context_Initialize_fp() the optional FP area adjustment via _CPU_Context_Fp_start() is superfluous. It is also wrong with respect to memory management, e.g. pointer passed to _Workspace_Free() may be not the one returned by _Workspace_Allocate(). Close #1400.
* posix: shared memory supportGedare Bloom2017-01-132-2/+4
| | | | | | | | | Add POSIX shared memory manager (Shm). Includes a hook-based approach for the backing memory storage that defaults to the Workspace, and a test is provided using the heap. A test is also provided for the basic use of mmap'ing a shared memory object. This test currently fails at the mmap stage due to no support for mmap.
* score: Add _Thread_Set_name()Sebastian Huber2017-01-133-0/+15
| | | | | | Add configuration option CONFIGURE_MAXIMUM_THREAD_NAME_SIZE. Update #2858.
* score: Add and use _Thread_Get_name()Sebastian Huber2017-01-131-1/+7
| | | | Update #2858.
* score: Add Thread_queue_Queue::nameSebastian Huber2017-01-132-12/+31
| | | | Update #2858.
* score: Add and use _Objects_Name_to_string()Sebastian Huber2017-01-131-0/+21
| | | | Update #2858.
* score: Remove unused _States_Is_*()Sebastian Huber2017-01-121-153/+0
|
* score: Replace STATES_DELAYINGSebastian Huber2017-01-121-37/+6
| | | | | | | | Replace STATES_DELAYING with STATES_WAITING_FOR_TIME. There is no need for separate timeout thread states. The Thread_Control::Timer::header and Watchdog_Control::cpu members can be used to figure out the kind of timeout.
* Remove obsolete __RTEMS_HAVE_SYS_CPUSET_H__Joel Sherrill2017-01-114-14/+3
|
* score: Improve SMP lock debug supportSebastian Huber2017-01-112-4/+15
| | | | | The CPU index starts with zero. Increment it by one, to allow global SMP locks to reside in the BSS section.
* score: Optimize thread state valuesSebastian Huber2017-01-111-48/+73
|
* score: Add STATES_THREAD_QUEUE_WITH_IDENTIFIERSebastian Huber2017-01-112-14/+15
| | | | | Add thread state bit to identify thread queues that are embedded in an object with identifier.
* score: Delete STATES_WAITING_FOR_BUFFERSebastian Huber2017-01-111-19/+1
|
* score: Format thread state definesSebastian Huber2017-01-111-27/+27
| | | | Specify all 32-bits in a thread state define.