| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
* score/include/rtems/score/schedulerpriority.h,
score/src/schedulerpriority.c, score/src/schedulerpriorityextract.c,
score/src/schedulerpriorityupdate.c: Formatting.
|
|
|
|
| |
* score/include/rtems/score/tod.h: Add missing includes.
|
|
|
|
|
|
|
|
| |
* score/include/rtems/debug.h, score/include/rtems/score/sysstate.h,
score/include/rtems/score/timespec.h,
score/inline/rtems/score/address.inl,
score/inline/rtems/score/stack.inl,
score/inline/rtems/score/states.inl: Add missing includes.
|
|
|
|
|
| |
* sapi/include/confdefs.h,
score/include/rtems/score/schedulerpriority.h: Add comments.
|
|
|
|
|
| |
* sapi/include/confdefs.h,
score/include/rtems/score/schedulerpriority.h: C++ compatibility.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sapi/include/confdefs.h, score/Makefile.am,
score/include/rtems/score/scheduler.h,
score/include/rtems/score/schedulerpriority.h,
score/include/rtems/score/thread.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl,
score/src/scheduler.c, score/src/schedulerpriority.c,
score/src/schedulerpriorityblock.c,
score/src/schedulerpriorityschedule.c,
score/src/schedulerpriorityunblock.c,
score/src/schedulerpriorityyield.c, score/src/threadchangepriority.c,
score/src/threadclose.c, score/src/threadinitialize.c,
score/src/threadsetpriority.c, score/src/threadsettransient.c:
Significant clean up on Scheduler Plugin Interface. Names were
shortened. Missing operations added. Many scheduler files had
unneeded includes removed. Made pointer to scheduler information in
Thread_Control and Scheduler_Control a void * pointer because the
thread and scheduler wrapper should be unaware of scheduler types AND
this is broken for user provided schedulers.
* score/src/schedulerpriorityallocate.c,
score/src/schedulerpriorityenqueue.c,
score/src/schedulerpriorityenqueuefirst.c,
score/src/schedulerpriorityextract.c,
score/src/schedulerpriorityfree.c,
score/src/schedulerpriorityupdate.c: New files.
* score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerprioritythreadschedulerupdate.c: Removed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sapi/include/confdefs.h, sapi/include/rtems/config.h,
score/include/rtems/score/scheduler.h,
score/include/rtems/score/schedulerpriority.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl,
score/src/scheduler.c, score/src/schedulerpriority.c,
score/src/schedulerpriorityblock.c,
score/src/schedulerpriorityschedule.c,
score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerprioritythreadschedulerupdate.c,
score/src/schedulerpriorityunblock.c,
score/src/schedulerpriorityyield.c, score/src/threadchangepriority.c,
score/src/threadclearstate.c, score/src/threadclose.c,
score/src/threadinitialize.c, score/src/threadready.c,
score/src/threadresume.c, score/src/threadsetpriority.c,
score/src/threadsetstate.c, score/src/threadsuspend.c: Simplify the
pluggable scheduler interface. Its configuration made a table
of available schedulers and set a pointer to one of the.
This was heavy handed since you can only use one scheduler
in an application. This configuration mechanism resulted in a
scheduler pointer being passed around when you could put all
scheduler configuration in an initialized structure.
|
|
|
|
|
|
|
| |
* libcsupport/src/rtems_heap_extend.c: New file.
* libcsupport/Makefile.am: Reflect change from above.
* libcsupport/include/rtems/malloc.h: Declare rtems_heap_extend().
* score/include/rtems/score/heap.h: Documentation.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libmisc/capture/capture.c, posix/src/keyfreememory.c,
posix/src/pthread.c, score/include/rtems/score/wkspace.h,
score/src/objectextendinformation.c,
score/src/objectnamespaceremove.c, score/src/objectsetname.c,
score/src/threadclose.c, score/src/threadinitialize.c,
score/src/wkspace.c: Many places were checking for a NULL pointer
before calling _Workspace_Free. By moving the check into
_Workspace_Free, we eliminate a number of conditional paths and make
it harder to return a NULL pointer.
|
|
|
|
|
|
| |
* rtems/src/semtranslatereturncode.c,
score/include/rtems/score/coremutex.h: Returns tests to running
state.
|
|
|
|
|
|
|
| |
* score/include/rtems/score/coremutex.h,
score/inline/rtems/score/coremutex.inl, score/src/apimutexallocate.c:
Fix direction of conditional and eliminate use of nesting is error
when POSIX is disabled.
|
|
|
|
|
|
|
|
| |
* rtems/src/semtranslatereturncode.c,
score/include/rtems/score/coremutex.h,
score/src/coremutexsurrender.c,
score/src/objectinitializeinformation.c: Disable code not reachable
when POSIX is not enabled.
|
|
|
|
| |
* score/include/rtems/score/context.h: Spacing.
|
|
|
|
|
| |
* score/include/rtems/score/basedefs.h:
Use "__asm__" instead of "asm" for improved c99-compliance.
|
|
|
|
|
|
|
|
| |
* score/src/watchdognanoseconds.c: New file.
* score/Makefile.am: Reflect change above.
* score/include/rtems/score/watchdog.h, score/src/coretodget.c,
score/src/coretodgetuptime.c: Do not allow NULL as nanoseconds since
last tick handler pointer.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sapi/include/confdefs.h, score/include/rtems/score/scheduler.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl,
score/src/schedulerpriority.c,
score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerprioritythreadschedulerupdate.c,
score/src/schedulerpriorityyield.c: Added attribute unused. Renamed
types and fields to follow the Score naming conventions.
|
|
|
|
|
|
| |
* score/include/rtems/score/scheduler.h,
score/include/rtems/score/schedulerpriority.h: Whitespace removal.
Moved C++ extern directive.
|
|
|
|
|
|
|
|
|
| |
PR 1711/cpukit
* score/inline/rtems/score/chain.inl, score/src/chain.c: New functions
_Chain_Immutable_head(), _Chain_Immutable_tail(),
_Chain_Immutable_first(), and _Chain_Immutable_last(). The
Chain_Control is now a union to avoid casts. The function
_Chain_Is_empty() takes now a const pointer parameter.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1647/cpukit
* posix/src/nanosleep.c, posix/src/sched_yield.c,
rtems/src/taskwakeafter.c, sapi/include/confdefs.h,
sapi/include/rtems/config.h, sapi/src/exinit.c, score/Makefile.am,
score/preinstall.am, score/include/rtems/score/prioritybitmap.h,
score/include/rtems/score/thread.h,
score/inline/rtems/score/thread.inl, score/src/thread.c,
score/src/threadchangepriority.c, score/src/threadclearstate.c,
score/src/threadclose.c, score/src/threadinitialize.c,
score/src/threadready.c, score/src/threadresume.c,
score/src/threadsetpriority.c, score/src/threadsetstate.c,
score/src/threadsettransient.c, score/src/threadsuspend.c,
score/src/threadtickletimeslice.c: Refactor scheduler out of thread
handler to facilitate alternate scheduler implementations.
* score/src/threadyieldprocessor.c: Removed.
* score/src/schedulerprioritythreadschedulerupdate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerpriorityblock.c, score/src/scheduler.c,
score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerpriorityunblock.c,
score/src/schedulerpriority.c, score/src/schedulerpriorityyield.c,
score/include/rtems/score/schedulerpriority.h,
score/include/rtems/score/scheduler.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl: New files.
|
|
|
|
| |
* score/include/rtems/score/userext.h: Documentation.
|
|
|
|
|
|
|
|
|
|
| |
Coverity Id 164/UNINIT
Coverity Id 165/UNINIT
* posix/src/prwlockinit.c, posix/src/pspininit.c,
score/include/rtems/score/corespinlock.h,
score/inline/rtems/score/corerwlock.inl,
score/inline/rtems/score/corespinlock.inl: Add initialization helpers
for score rwlock and spinlock. Use them from POSIX.
|
|
|
|
|
|
|
|
|
| |
PR 1672/cpukit
* score/include/rtems/score/heap.h, score/src/heap.c,
score/src/heapallocate.c, score/src/heapextend.c,
score/src/heapfree.c, score/src/heapresizeblock.c,
score/src/heapsizeofuserarea.c: Added heap protection in case
RTEMS_DEBUG is defined.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1673/cpukit
* score/src/chainappendempty.c, score/src/chaingetempty.c,
score/src/chainprependempty.c: New files.
* score/Makefile.am: Reflect changes above.
* score/include/rtems/score/chain.h: Declare
_Chain_Append_with_empty_check(), _Chain_Prepend_with_empty_check(),
and _Chain_Get_with_empty_check().
* score/inline/rtems/score/chain.inl: Define
_Chain_Append_with_empty_check_unprotected(),
_Chain_Prepend_with_empty_check_unprotected(), and
_Chain_Get_with_empty_check_unprotected().
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1671/cpukit
* libcsupport/include/rtems/gxx_wrappers.h: New file.
* libcsupport/Makefile.am, libcsupport/preinstall.am: Reflect change
above.
* libcsupport/src/gxx_wrappers.c: Include <rtems/gxx_wrappers.h>. Use
_Internal_error_Occurred() instead of rtems_panic().
* score/include/rtems/score/interr.h: Added
INTERNAL_ERROR_GXX_KEY_ADD_FAILED and
INTERNAL_ERROR_GXX_MUTEX_INIT_FAILED.
|
|
|
|
|
|
| |
PR 1658/cpukit
* sapi/src/exshutdown.c, score/include/rtems/score/interr.h: If the
system is not up, consider it a fatal error.
|
|
|
|
|
|
|
|
|
|
| |
PR 1660/filesystem
* libfs/src/pipe/fifo.c, libfs/src/pipe/pipe.h: Changed
int pipe_release to void pipe_release.
* libfs/src/imfs/imfs_fifo.c: Corresponding change to
IMFS_fifo_close since pipe_release does not return any error.
* libfs/src/imfs/imfs_initsupp.c: Changes to improve
IMFS_determine_bytes_per_block
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1599/cpukit
* posix/src/psignalunblockthread.c, posix/src/pthreadkill.c,
rtems/src/signalsend.c, score/include/rtems/score/percpu.h,
score/inline/rtems/score/thread.inl, score/src/thread.c,
score/src/threadchangepriority.c, score/src/threadclearstate.c,
score/src/threaddispatch.c, score/src/threadready.c,
score/src/threadresume.c, score/src/threadsetstate.c,
score/src/threadstartmultitasking.c, score/src/threadsuspend.c,
score/src/threadyieldprocessor.c: Rename _Context_Switch_necessary to
_Thread_Dispatch_necessary to more properly reflect the intent.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1635/cpukit
* sapi/src/exinit.c, score/Makefile.am, score/preinstall.am,
score/include/rtems/score/bitfield.h,
score/include/rtems/score/priority.h,
score/include/rtems/score/thread.h,
score/inline/rtems/score/priority.inl,
score/inline/rtems/score/thread.inl,
score/src/threadchangepriority.c, score/src/threadclearstate.c,
score/src/threadready.c, score/src/threadresume.c,
score/src/threadsetpriority.c, score/src/threadsetstate.c,
score/src/threadsettransient.c, score/src/threadsuspend.c:
Refactoring of priority handling, to isolate the bitmap
implementation of priorities in the supercore so that priority
management is a little more modular. This change is in anticipation
of scheduler implementations that can select how they manage tracking
priority levels / finding the highest priority ready task. Note that
most of the changes here are simple renaming, to clarify the use of
the bitmap-based priority management.
* score/include/rtems/score/prioritybitmap.h,
score/inline/rtems/score/prioritybitmap.inl: New files.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* score/include/rtems/score/basedefs.h: New file.
* score/Makefile.am, score/preinstall.am: Reflect change above.
* score/include/rtems/score/percpu.h: Include <rtems/score/cpu.h>.
* score/include/rtems/system.h: Moved definition of SCORE_EXTERN,
SAPI_EXTERN, RTEMS_EXTERN, POSIX_EXTERN, RTEMS_INLINE_ROUTINE,
RTEMS_COMPILER_MEMORY_BARRIER, RTEMS_COMPILER_NO_RETURN_ATTRIBUTE,
RTEMS_COMPILER_DEPRECATED_ATTRIBUTE, TRUE, and FALSE to
<rtems/score/basedefs.h>.
Removed include of <rtems/score/cpu.h>, <stdint.h> and <stddef.h>.
|
|
|
|
| |
* score/include/rtems/seterr.h: Include <errno.h>.
|
|
|
|
|
|
| |
PR 1606/cpukit
* score/include/rtems/score/interr.h: Remove
INTERNAL_ERROR_INVALID_WORKSPACE_ADDRESS since it is not generated.
|
|
|
|
|
|
|
| |
* score/src/isrthreaddispatch.c: Removed file.
* score/Makefile.am: Reflect change above.
* score/include/rtems/score/isr.h: Removed _ISR_Thread_dispatch()
declaration.
|
|
|
|
|
| |
* libcsupport/src/rtems_memalign.c, score/include/rtems/score/heap.h:
Remove stray references to malloc boundary.
|
|
|
|
|
|
| |
* configure.ac, score/include/rtems/score/percpu.h: Add
__RTEMS_SIZEOF_VOID_P__ to cpuopts.h so percpu.h has this information
available during build and after installation.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1573/cpukit
* configure.ac, posix/src/killinfo.c,
posix/src/psignalclearprocesssignals.c,
posix/src/psignalsetprocesssignals.c,
posix/src/psignalunblockthread.c, posix/src/pthreadcreate.c,
posix/src/pthreadkill.c, posix/src/pthreadsigmask.c,
rtems/src/signalsend.c, rtems/src/taskmode.c, score/Makefile.am,
score/preinstall.am, score/include/rtems/system.h,
score/include/rtems/score/context.h, score/include/rtems/score/isr.h,
score/include/rtems/score/thread.h, score/src/isr.c,
score/src/isrthreaddispatch.c, score/src/thread.c,
score/src/threaddispatch.c, score/src/threadloadenv.c: Add a per cpu
data structure which contains the information required by RTEMS for
each CPU core. This encapsulates information such as thread
executing, heir, idle and dispatch needed.
* score/include/rtems/score/percpu.h, score/src/percpu.c: New files.
|
|
|
|
|
|
|
|
| |
PR 1589/cpukit
* score/Makefile.am, score/include/rtems/score/thread.h,
score/inline/rtems/score/thread.inl: Make _Thread_Evaluate_mode() an
inline method. It is only used in one place and relatively simple.
* score/src/threadevaluatemode.c: Removed.
|
|
|
|
|
|
|
|
|
| |
PR 1590/cpukit
* score/Makefile.am, score/include/rtems/score/thread.h,
score/src/threadtickletimeslice.c: Remove _Thread_Reset_timeslice and
replaces its single use with a call to the functionally equivalent
_Thread_Yield_processor().
* score/src/threadresettimeslice.c: Removed.
|
|
|
|
| |
* score/include/rtems/score/object.h: Remove OBJECTS_ITRON_API.
|
|
|
|
| |
* score/include/rtems/score/thread.h: Remove ITRON.
|
|
|
|
| |
* score/include/rtems/score/interr.h: Remove ITRON.
|
|
|
|
| |
* score/include/rtems/system.h: Remove ITRON_EXTERN.
|
|
|
|
| |
* core/include/rtems/score/object.h: Remove Objects_ITRON_API.
|
| |
|
|
|
|
|
|
| |
* score/include/rtems/score/object.h,
score/include/rtems/score/thread.h: Remove prototypes for ITRON
only methods removed by Ralf.
|
|
|
|
|
|
|
|
|
| |
* libnetworking/rtems/mkrootfs.h,
posix/include/rtems/posix/pthread.h,
score/include/rtems/score/coresem.h,
score/include/rtems/score/priority.h,
score/include/rtems/score/threadq.h,
score/include/rtems/score/timestamp.h: Move 'extern "C"'.
|
|
|
|
|
|
|
| |
* score/include/rtems/score/timestamp.h,
score/include/rtems/score/timestamp64.h,
score/include/rtems/score/watchdog.h:
Misc. doxygen fixes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* score/include/rtems/score/heap.h: Declare
_Heap_Get_first_and_last_block(). Removed Heap_Extend_status.
Changed return type of _Heap_Extend() to bool.
* score/inline/rtems/score/heap.inl: Define
_Heap_Set_last_block_size().
* score/src/heap.c: Define and use _Heap_Get_first_and_last_block().
* score/src/heapgetinfo.c: Removed assert statements. Do not count
the last block. This ensures that all size values are an integral
multiple of the page size which is consistent with the other
statistics.
* score/src/heapextend.c: Implemented support for scattered heap
areas.
* score/src/heapwalk.c: Dump also last block. Changes for new first
and last block values.
* ./score/src/pheapextend.c, rtems/src/regionextend.c: Update for
_Heap_Extend() changes.
|
|
|
|
|
| |
* score/include/rtems/system.h: Let RTEMS_offsetof return uintptr_t
instead of uint32_t (16bit target compatibility).
|
| |
|
|
|
|
|
| |
* score/include/rtems/system.h: Fix warnings about TRUE/FALSE not
defined on ARM target. This file need to be clean from .S files.
|