summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix semaphore post overflow statusSebastian Huber2016-05-262-1/+2
| | | | Close #2720.
* score: Move thread queue MP callout to contextSebastian Huber2016-05-2519-124/+157
| | | | | | | | Drop the multiprocessing (MP) dependent callout parameter from the thread queue extract, dequeue, flush and unblock methods. Merge this parameter with the lock context into new structure Thread_queue_Context. This helps to gets rid of the conditionally compiled method call helpers.
* score: Get rid of mp_id parameterSebastian Huber2016-05-2510-13/+1
| | | | | Get rid of the mp_id parameter used for some thread queue methods. Use THREAD_QUEUE_QUEUE_TO_OBJECT() instead.
* score: Move thread queue object supportSebastian Huber2016-05-253-10/+4
|
* cpukit, testsuite: Add rtems_printf and rtems_printer support.Chris Johns2016-05-252-21/+19
| | | | | | | | | | | | | | | | | | | This change adds rtems_printf and related functions and wraps the RTEMS print plugin support into a user API. All references to the plugin are removed and replaced with the rtems_printer interface. Printk and related functions are made to return a valid number of characters formatted and output. The function attribute to check printf functions has been added to rtems_printf and printk. No changes to remove warrnings are part of this patch set. The testsuite has been moved over to the rtems_printer. The testsuite has a mix of rtems_printer access and direct print control via the tmacros.h header file. The support for begink/endk has been removed as it served no purpose and only confused the code base. The testsuite has not been refactored to use rtems_printf. This is future work.
* score: _CORE_message_queue_Seize()Sebastian Huber2016-05-241-1/+0
| | | | Delete unused parameter.
* mpci: Add missing return statementsSebastian Huber2016-05-248-8/+8
|
* score: _CORE_semaphore_Seize()Sebastian Huber2016-05-201-1/+0
| | | | Delete unused parameter.
* Replace *_Get_interrupt_disable() with *_Get()Sebastian Huber2016-05-2028-50/+28
| | | | | Uniformly use *_Get() to get an object by identifier with a lock context.
* score: Rename _Objects_Get_local()Sebastian Huber2016-05-207-7/+7
| | | | | | Rename _Objects_Get_local() into _Objects_Get(). Confusions with the previous _Objects_Get() function are avoided since the Objects_Locations parameter is gone.
* rtems: _Semaphore_Get_interrupt_disable()Sebastian Huber2016-05-208-357/+286
| | | | | | Use _Objects_Get_local() for _Semaphore_Get_interrupt_disable() to get rid of the location parameter. Move remote object handling to semaphore MPCI support.
* rtems: _Message_queue_Get_interrupt_disable()Sebastian Huber2016-05-2010-365/+348
| | | | | | Use _Objects_Get_local() for _Message_queue_Get_interrupt_disable() to get rid of the location parameter. Move remote object handling to message queue MPCI support.
* rtems: Remove location from _Partition_Get()Sebastian Huber2016-05-206-124/+138
| | | | | Use _Objects_Get_local() for _Partition_Get() to get rid of the location parameter. Move remote object handling to partition MPCI support.
* mpci: Delete unused region supportSebastian Huber2016-05-201-12/+0
|
* score: Add per scheduler instance maximum prioritySebastian Huber2016-05-201-0/+1
| | | | | | | | | | | The priority values are only valid within a scheduler instance. Thus, the maximum priority value must be defined per scheduler instance. The first scheduler instance defines PRIORITY_MAXIMUM. This implies that RTEMS_MAXIMUM_PRIORITY and POSIX_SCHEDULER_MAXIMUM_PRIORITY are only valid for threads of the first scheduler instance. Further API/implementation changes are necessary to fix this. Update #2556.
* score: Rename _ISR_Flash() into _ISR_Local_flash()Sebastian Huber2016-05-202-2/+2
| | | | | | This is a preparation to remove the Giant lock. Update #2555.
* score: Rename _ISR_Disable() and _ISR_Enable()Sebastian Huber2016-05-202-4/+4
| | | | | | | | | Rename _ISR_Disable() into _ISR_Local_disable(). Rename _ISR_Enable() into _ISR_Local_enable(). Remove _Debug_Is_owner_of_giant(). This is a preparation to remove the Giant lock. Update #2555.
* score: Rename _ISR_Disable_without_giant()Sebastian Huber2016-05-201-2/+2
| | | | | | | | | Rename _ISR_Disable_without_giant() into _ISR_Local_disable(). Rename _ISR_Enable_without_giant() into _ISR_Local_enable(). This is a preparation to remove the Giant lock. Update #2555.
* rtems: Avoid Giant lock for rtems_task_delete()Sebastian Huber2016-05-202-48/+52
| | | | Update #2555.
* score: Avoid Giant lock for _Thread_Start()Sebastian Huber2016-05-201-44/+14
| | | | Update #2555.
* posix: Rework pthread_join()Sebastian Huber2016-05-201-1/+9
| | | | | | | | | Rework pthread_join() to use _Thread_Join(). Close #2402. Update #2555. Update #2626. Close #2714.
* score: Split _Thread_Restart()Sebastian Huber2016-05-201-21/+21
| | | | | | | | | | | Split _Thread_Restart() into _Thread_Restart_self() and _Thread_Restart_other(). Move content of existing _Thread_Restart_self() into new _Thread_Restart_self(). Avoid Giant lock for thread restart. _Thread_Restart_self() is a no-return function and used by _Thread_Global_construction(). Update #2555. Update #2626.
* score: Avoid superfluous life protectionSebastian Huber2016-05-201-6/+0
| | | | | | | | Disable thread dispatching is enough to prevent deletion of the executing thread. There is no need for an additional life protection. Update #2555. Update #2626.
* score: Add _Thread_Exit()Sebastian Huber2016-05-201-1/+8
| | | | | | | | The goal is to make _Thread_Exit() a no-return function in follow up patches. Update #2555. Update #2626.
* rtems: Add rtems_interrupt_lock_interrupt_disableSebastian Huber2016-05-121-0/+13
| | | | Update #2707.
* score: Avoid Giant lock for scheduler set/getSebastian Huber2016-05-122-51/+51
| | | | Update #2555.
* score: Avoid Giant lock _Scheduler_Get_affinity()Sebastian Huber2016-05-121-24/+27
| | | | Update #2555.
* score: Avoid Giant lock _Scheduler_Set_affinity()Sebastian Huber2016-05-121-19/+24
| | | | Update #2555.
* score: Use thread state lock for current stateSebastian Huber2016-05-121-2/+2
| | | | | | | In addition protect scheduler of thread by thread state lock. Enables use of scheduler per-instance locks. Update #2555.
* rtems: Avoid Giant lock rtems_task_is_suspended()Sebastian Huber2016-05-121-35/+13
| | | | Update #2555.
* rtems: Avoid Giant lock for some task operationsSebastian Huber2016-05-125-131/+158
| | | | | | | Avoid Giant lock for rtems_task_set_priority(), rtems_task_suspend() and rtems_task_resume(). Update #2555.
* rtems: Use thread state lock for signalsSebastian Huber2016-05-126-120/+23
|
* score: Introduce thread state lockSebastian Huber2016-05-124-12/+17
| | | | Update #2556.
* mpci: Delete unused region supportSebastian Huber2016-05-125-429/+0
|
* rtems: Avoid Giant lock for signalsSebastian Huber2016-05-067-153/+115
| | | | Update #2555.
* score: Simplify _Thread_Get_interrupt_disable()Sebastian Huber2016-05-044-124/+85
| | | | Remove the object location parameter.
* rtems: Return status in _Event_Surrender()Sebastian Huber2016-05-044-6/+6
|
* rtems: Remove task variablesSebastian Huber2016-05-049-512/+9
| | | | | Update #2494. Update #2555.
* score: Optimize _Objects_Get_local()Sebastian Huber2016-05-024-5/+5
| | | | | Make the interrupt lock context the second parameter to avoid register moves.
* mpci: Make _*_MP_Get_packet() staticSebastian Huber2016-05-0215-107/+36
|
* mpci: Make _*_MP_Send_response_packet() staticSebastian Huber2016-05-0215-101/+7
|
* score: Delete __RTEMS_STRICT_ORDER_MUTEX__Sebastian Huber2016-05-021-3/+0
| | | | | | Remove support for strict order mutexes. Close #2124.
* score: Avoid Giant lock for set time of daySebastian Huber2016-05-021-7/+10
| | | | | Update #2555. Update #2630.
* score: Streamline set time of day functionsSebastian Huber2016-05-021-1/+1
| | | | | | | Rename _TOD_Set() into _TOD_Set_with_timespec(). Rename _TOD_Set_with_timestamp() into _TOD_Set(). This is now in line with _TOD_Get() and _TOD_Get_as_timespec(). The timestamp is the canonical format.
* rtems: Avoid Giant lock in rtems_object_set_name()Sebastian Huber2016-05-021-16/+10
| | | | Update #2555.
* rtems: Avoid Giant lock for semaphoresSebastian Huber2016-05-022-26/+20
| | | | Update #2555.
* posix: Simplify message queuesSebastian Huber2016-05-021-1/+0
| | | | | | | | | | | | The mq_open() function returns a descriptor to a POSIX message queue object identified by a name. This is similar to sem_open(). In contrast to the POSIX semaphore the POSIX message queues use a separate object for the descriptor. This extra object is superfluous, since the object identifier can be used directly for this purpose, just like for the semaphores. Update #2702. Update #2555.
* rtems: Avoid Giant lock for message queuesSebastian Huber2016-05-022-51/+17
| | | | Update #2555.
* score: _CORE_message_queue_Submit()Sebastian Huber2016-05-022-0/+8
| | | | | Move lock acquire to caller of _CORE_message_queue_Submit() to allow state checks during send operations under lock protection.
* score: _CORE_message_queue_Seize()Sebastian Huber2016-05-021-0/+5
| | | | | Move lock acquire to caller of _CORE_message_queue_Seize() to allow state checks during receive operations under lock protection.