summaryrefslogtreecommitdiffstats
path: root/cpukit (follow)
Commit message (Collapse)AuthorAgeFilesLines
* score: Introduce map priority scheduler operationSebastian Huber2016-06-2228-82/+317
| | | | | | | | | | | Introduce map/unmap priority scheduler operations to map thread priority values from/to the user domain to/from the scheduler domain. Use the map priority operation to validate the thread priority. The EDF schedulers use this new operation to distinguish between normal priorities and priorities obtain through a job release. Update #2173. Update #2556.
* score: Delete unused _Scheduler_Priority_compare()Sebastian Huber2016-06-2218-194/+37
| | | | | By convention, thread priorities must be integers in RTEMS. Smaller values represent more important threads.
* rtems: Rework RTEMS API to SuperCore prioritySebastian Huber2016-06-229-115/+199
| | | | | Use same structure as POSIX API for thread priority conversion to/from SuperCore.
* posix: Generalize _POSIX_Priority_To_core()Sebastian Huber2016-06-227-32/+44
| | | | Move POSIX API priority validation into _POSIX_Priority_To_core().
* posix: Make POSIX API aware of scheduler instancesSebastian Huber2016-06-2210-93/+91
|
* posix: Rework sporadic server scheduling policySebastian Huber2016-06-229-193/+254
| | | | | | | | | | | | | | Instead of lowering the priority in case the initial budget is consumed raise the priority for each new period. Restore the normal priority once the initial budget is consumed. This makes it later easier to combine the high priority phase with temporary priority boosts (e.g. via priority ceiling and inheritance). Use the thread lock to protect the POSIX thread attributes instead of the thread state lock. This makes it easier to change the thread priority and keep the POSIX attributes consistent. Fixes a false positive use of uninitialized variable warning.
* posix: Delete POSIX_API_Control::schedparamSebastian Huber2016-06-227-14/+16
| | | | This field was redundant.
* posix: Delete POSIX_API_Control::schedpolicySebastian Huber2016-06-226-10/+4
| | | | This field was redundant.
* posix: Delete POSIX_API_Control::ss_high_prioritySebastian Huber2016-06-222-9/+0
| | | | This field was unused.
* posix: _POSIX_Mutex_Default_attributesSebastian Huber2016-06-228-39/+50
| | | | | | Make _POSIX_Mutex_Default_attributes constant and independent of the scheduler instance. Use INT_MAX to indicate the default ceiling priority.
* posix: pthread_mutexattr_setprioceiling()Sebastian Huber2016-06-222-17/+11
| | | | | | | Accept all priority values in pthread_mutexattr_setprioceiling(). This is in line with POSIX and FreeBSD. The priority is validated in pthread_mutex_init(). Validate the priority only for priority ceiling mutexes.
* sparc: Optimize CPU counter supportSebastian Huber2016-06-225-38/+98
|
* Add printer taskSebastian Huber2016-06-223-0/+310
|
* Rename rtems_test_print() into rtems_test_printf()Sebastian Huber2016-06-222-2/+2
|
* Avoid <rtems/print.h> in <rtems/rtems/ratemon.h>Sebastian Huber2016-06-221-2/+3
| | | | | This gets rid of the pull in of <stdarg.h> via <rtems.h> via <rtems/rtems/ratemon.h> via <rtems/print.h>.
* Move printer initialization to separate headerSebastian Huber2016-06-2224-93/+150
| | | | | | The RTEMS print user need to know nothing about a particular printer implementation. In particular get rid of the <stdio.h> include which would be visible via <rtems.h>.
* Make rtems/print.h independent of rtems/bspIo.hSebastian Huber2016-06-228-18/+24
|
* Rename and move RTEMS_PRINTF_ATTRIBUTE()Sebastian Huber2016-06-224-14/+18
| | | | | Rename RTEMS_PRINTF_ATTRIBUTE() into RTEMS_PRINTFLIKE() (similar to <sys/cdefs.h> __printflike()) and move it to <rtems/score/basedefs.h>.
* Make rtems_fprintf_plugin() staticSebastian Huber2016-06-222-14/+1
|
* Make rtems_printf_plugin() staticSebastian Huber2016-06-222-19/+6
|
* Make printk_plugin() staticSebastian Huber2016-06-222-20/+9
|
* sparc: Rework CPU counter supportSebastian Huber2016-06-214-26/+88
| | | | | Rework CPU counter support to enable use of the GR740 up-counter via %asr22 and %asr23.
* score: Refine system initialization orderSebastian Huber2016-06-201-3/+13
|
* Add pthread_condattr_getclock() and pthread_condattr_setclock()Joel Sherrill2016-06-163-1/+87
| | | | updates #2608.
* score: Fix thread delete race condition on SMPSebastian Huber2016-06-161-6/+17
|
* rtems: Fix rtems_semaphore_create()Sebastian Huber2016-06-161-0/+4
| | | | | Destroy the thread queue in case of a priority ceiling violation, otherwise the SMP profiling data gets corrupted.
* posix: Fix poradic server initial CPU budgetSebastian Huber2016-06-153-10/+11
| | | | Update #2738.
* posix: Use _POSIX_Threads_Sporadic_timer_insert()Sebastian Huber2016-06-153-15/+16
|
* posix: Remove superfluous codeSebastian Huber2016-06-151-61/+0
| | | | Remove double declarations, useless comments and unused functions.
* posix: sched_get_priority_max()Sebastian Huber2016-06-142-3/+12
| | | | | | Enable for all configurations since it pulls in no additional dependencies. Return value of the scheduler instance of the executing thread.
* posix: sched_get_priority_min()Sebastian Huber2016-06-141-1/+3
| | | | | Enable for all configurations since it pulls in no additional dependencies.
* score: _Scheduler_priority_Ready_queue_initializeSebastian Huber2016-06-144-7/+17
| | | | | Use priority maximum of scheduler instance. This avoids a potential memory corruption on SMP configurations.
* score: _Thread_Create_idle_for_CPU()Sebastian Huber2016-06-141-12/+12
| | | | Use priority maximum of scheduler instance.
* posix: Add pthread_setschedprio()Sebastian Huber2016-06-132-0/+55
| | | | Close #2734.
* posix: Fix pthread_setschedparam()Sebastian Huber2016-06-131-1/+1
| | | | Close #2735.
* posix: Fix pthread_getschedparam()Sebastian Huber2016-06-131-1/+1
| | | | | | Return the unmodified thread priority value according to POSIX. Close #2736.
* i386: Fix _CPU_Bitfield_Find_first_bit()Sebastian Huber2016-06-131-6/+5
| | | | Bug introduced by b04b76c6a0c87ffc9670d356e793108411ce355a.
* score: Comment _Thread_queue_Enqueue_critical()Sebastian Huber2016-06-091-0/+9
|
* confdefs.h: Do not hide network file systemsSebastian Huber2016-06-091-34/+30
| | | | | Do not hide network file systems if RTEMS_NETWORKING is not defined, since they may be provided by the LibBSD.
* ftpfs: Remove superfluous includeSebastian Huber2016-06-091-1/+0
|
* score: Add an SMP sequence lock implementationSebastian Huber2016-06-093-0/+178
|
* score: Use builtin for _Bitfield_Find_first_bit()Sebastian Huber2016-06-081-0/+2
| | | | | | In case the CPU architecture provides no specialized _CPU_Bitfield_Find_first_bit() macro, then use the __builtin_clz() builtin in case __GNUC__ is defined.
* score: Inline _Bitfield_Find_first_bit()Sebastian Huber2016-06-081-32/+23
| | | | Turn _Bitfield_Find_first_bit() macro into an inline function.
* score: Define _Priority_Bits_index() onceSebastian Huber2016-06-081-25/+13
|
* score: Define _Priority_Mask() onceSebastian Huber2016-06-081-21/+13
|
* score: Simplify priority bit map implementationSebastian Huber2016-06-0822-81/+21
| | | | | | | | | | The priority bit map can deal with a maximum of 256 priority values ranging from 0 to 255. Consistently use an unsigned int for computation, due to the usual integer promotion rules. Make Priority_bit_map_Word definition architecture-independent and define it to uint16_t. This was already the case for all architectures except PowerPC. Adjust the PowerPC bitmap support accordingly.
* score: Delete CPU_USE_GENERIC_BITFIELD_DATASebastian Huber2016-06-0820-56/+7
| | | | | | Rename __log2table into _Bitfield_Leading_zeros since it acually returns the count of leading zeros of an 8-bit integer. The value for zero is a bit odd. Provide it unconditionally.
* powerpc: Define bitmap defines to FALSESebastian Huber2016-06-081-0/+4
|
* score: Delete dead copy and paste codeSebastian Huber2016-06-0810-1064/+5
|
* rtems: Simplify rtems_semaphore_create()Sebastian Huber2016-06-071-132/+113
| | | | | Remove superfluous includes. Use one attribute compare for each semaphore variant. Text size drops by 10% on PowerPC due to this.