summaryrefslogtreecommitdiffstats
path: root/cpukit/posix/include/rtems/posix/barrierimpl.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* score: Add _Thread_queue_Context_set_MP_callout()Sebastian Huber2016-05-301-1/+1
| | | | | | Add _Thread_queue_Context_set_MP_callout() to simplify _Thread_queue_Context_initialize(). This makes it possible to more easily add additional fields to Thread_queue_Context.
* score: Add Status_Control for all APIsSebastian Huber2016-05-261-14/+0
| | | | | | | | | | | Unify the status codes of the Classic and POSIX API to use the new enum Status_Control. This eliminates the Thread_Control::Wait::timeout_code field and the timeout parameter of _Thread_queue_Enqueue_critical() and _MPCI_Send_request_packet(). It gets rid of the status code translation tables and instead uses simple bit operations to get the status for a particular API. This enables translation of status code constants at compile time. Add _Thread_Wait_get_status() to avoid direct access of thread internal data structures.
* score: Move thread queue MP callout to contextSebastian Huber2016-05-251-3/+4
| | | | | | | | 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: Rename _Objects_Get_local()Sebastian Huber2016-05-201-1/+1
| | | | | | Rename _Objects_Get_local() into _Objects_Get(). Confusions with the previous _Objects_Get() function are avoided since the Objects_Locations parameter is gone.
* score: Optimize _Objects_Get_local()Sebastian Huber2016-05-021-2/+2
| | | | | Make the interrupt lock context the second parameter to avoid register moves.
* score: Avoid Giant lock for barriersSebastian Huber2016-04-221-17/+7
| | | | | | Use _Thread_queue_Flush_critical() to atomically release the barrier. Update #2555.
* Optional POSIX Barrier initializationSebastian Huber2016-02-031-9/+1
| | | | Update #2408.
* score: Add Thread_queue_Control::LockSebastian Huber2015-05-191-0/+1
| | | | | | | | | | | Move the complete thread queue enqueue procedure into _Thread_queue_Enqueue_critical(). It is possible to use the thread queue lock to protect state of the object embedding the thread queue. This enables per object fine grained locking in the future. Delete _Thread_queue_Enter_critical_section(). Update #2273.
* Delete unused *_Is_null() functionsSebastian Huber2014-07-261-19/+0
|
* Change all references of rtems.com to rtems.org.Chris Johns2014-03-211-1/+1
|
* score: Create object implementation headerSebastian Huber2013-07-261-0/+1
| | | | | | Move implementation specific parts of object.h and object.inl into new header file objectimpl.h. The object.h contains now only the application visible API.
* score: Create barrier implementation headerSebastian Huber2013-07-221-0/+1
| | | | | | Move implementation specific parts of corebarrier.h and corebarrier.inl into new header file corebarrierimpl.h. The corebarrier.h contains now only the application visible API.
* posix: Create barrier implementation headerSebastian Huber2013-07-221-0/+131
Move implementation specific parts of barrier.h and barrier.inl into new header file barrierimpl.h. The barrier.h contains now only the application visible API.