| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
This avoids a dependency on the non-standard libxml2 module.
|
|
|
|
|
|
|
|
| |
Add _CPU_Get_TLS_thread_pointer() to get the thread pointer which is
used to get the address of thread-local storage objects associated with
a thread.
Update #4920.
|
|
|
|
|
|
|
|
| |
Store symbols with an arbitrary absolute address such as _TLS_Size,
_TLS_Alignment, _TLS_Data_size, and _TLS_BSS_size in an object to avoid issues
with some code models.
Update #4953.
|
| |
|
|
|
|
|
|
|
| |
Use a symbol value relative to an existing symbol address to make the
test work on more code models.
Update #4953.
|
|
|
|
| |
These functions do not belong to an super core service.
|
| |
|
|
|
|
|
| |
The embedded brains GmbH & Co. KG is the legal successor of embedded
brains GmbH.
|
|
|
|
|
|
|
| |
The O_CREAT flag requires a mode and initial value as third and fourth
argument.
Close #4878.
|
|
|
|
| |
Updates #3420.
|
|
|
|
|
| |
End the test with a normal exit instead of
INTERNAL_ERROR_THREAD_EXITTED.
|
|
|
|
|
|
|
| |
Ensure that the IDLE storage allocator did allocate a suffiently large area.
Update #3835.
Update #4524.
|
|
|
|
|
|
|
|
|
|
|
|
| |
By default, allocate the IDLE task storage areas from the RTEMS Workspace.
This avoids having to estimate the thread-local storage size in the default
configuration.
Add the application configuration option CONFIGURE_IDLE_TASK_STORAGE_SIZE to
request a static allocation of the task storage area for IDLE tasks.
Update #3835.
Update #4524.
|
|
|
|
|
|
| |
Add the INTERNAL_ERROR_IDLE_THREAD_CREATE_FAILED fatal error in case the
creation of an idle thread fails. This may happen due to a failing create
extension provided by the application.
|
|
|
|
|
|
|
|
| |
Allow the IDLE stack allocator to change the stack size. This can be
used by applications with a very dynamic thread-local storage size to
adjust the thread storage area of the IDLE tasks dynamically.
Update #4524.
|
| |
|
|
|
|
| |
Update #4560.
|
|
|
|
|
| |
The thread-local storage area is located close to other stacks. Try to detect
overwrites.
|
|
|
|
|
|
|
| |
Directly use "static inline" which is available in C99 and later. This brings
the RTEMS implementation closer to standard C.
Close #3935.
|
|
|
|
|
|
|
| |
Since commit 6a6580331df3e09516d50f37d4dd5fd57825c08a, the local table is
zero-initialized. Use an initial object control block instead.
Update #4678.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The uniprocessor schedulers had some special case logic for the
PRIORITY_PSEUDO_ISR priority. Tasks with a priority of PRIORITY_PSEUDO_ISR
were allowed to preempt a not preemptible task. If other higher priority task
are made ready while a PRIORITY_PSEUDO_ISR task preempts a not preemptible
task, then the other tasks run before the not preemptible task. This made the
RTEMS_NO_PREEMPT mode ineffective.
Remove the PRIORITY_PSEUDO_ISR special case logic. This simplifies the
uniprocessor schedulers. Move the uniprocessor-specific scheduler support to
the new header file <rtems/score/scheduleruniimpl.h>.
Close #2365.
|
| |
|
|
|
|
| |
Update #4560.
|
| |
|
|
|
|
|
|
|
| |
The objects control blocks cannot be used to check the pre-initialization state
since they are allocated in a .noinit section.
Update #4678.
|
|
|
|
| |
Update #4677.
|
|
|
|
|
|
| |
Dirty or zero also the part of the .noinit section used by RTEMS.
Close #4678.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Place the statically allocated object control blocks, local tables, and thread
queue heads into the dedicated .noinit intput sections. The output section is
not zero initialized. Placing these elements into the .noinit section reduces
the system initialization time by decreasing the .bss section size.
It may improve the cache efficiency since the mostly read local tables are
placed in a contiguous memory area.
Update #4678.
|
|
|
|
|
| |
Commit 80090639a62b50d7d66614ca789e4592924a06e5 altered the system state
change. Account for this in assert_allocator_protected_thread_context().
|
|
|
|
| |
Update #2349.
|
|
|
|
| |
Update #2349.
|
|
|
|
|
|
|
|
|
|
|
|
| |
At some point during system initialization, the idle threads are created.
Afterwards, the boot processor basically executes within the context of an idle
thread with thread dispatching disabled. On some architectures, the
thread-local storage area of the associated thread must be set in dedicated
processor registers. Add the new CPU port function to do this:
void _CPU_Use_thread_local_storage( const Context_Control *context )
Close #4672.
|
|
|
|
| |
Update #4667.
|
| |
|
|
|
|
| |
Updates #3053.
|
|
|
|
| |
Updates #3053.
|
|
|
|
|
|
| |
Manually adjusted location of SPDX annotation so #! remains first line.
Updates #3053.
|
|
|
|
| |
Update #2349.
|
|
|
|
| |
Update #2349.
|
|
|
|
| |
Update #2349.
|
|
|
|
|
| |
This file had no file header, copyright, or license. Based on git
history, added appropriate copyright and license.
|
|
|
|
|
| |
This file had no header, copyright, or license. Based on git history,
added appropriate copyright and license.
|
|
|
|
|
| |
This file had no header, copyright, or license. Based on git history,
added appropriate copyright and license.
|
|
|
|
|
| |
These files had no file header, copyright, or license. Based on git
history, added appropriate copyright and license.
|
|
|
|
|
| |
Theses files had no file header, copyright, or license. Based on git
history, added appropriate copyrights and licenses.
|
| |
|
|
|
|
| |
Updates #3053.
|
|
|
|
| |
Updates #3053.
|
|
|
|
| |
Updates #3053.
|