| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Closes #4076.
|
|
|
|
|
|
| |
Fix an error cleanup path in SMP configurations to avoid a NULL pointer access.
Update #3959.
|
|
|
|
|
|
|
| |
This avoids a dependency to the stack free function in the thread
destruction.
Update #3959.
|
|
|
|
|
|
| |
This decouples the task stack allocation from the deallocation.
Update #3959.
|
|
|
|
|
|
|
|
| |
Do the stack allocator initialization and sanity check only if a
user-provided stack allocator was configured. This avoids a dependency
of _Thread_Handler_initialization() on the stack allocator.
Update #3959.
|
|
|
|
|
|
| |
The nodes are never NULL.
Update #3959.
|
|
|
|
|
|
| |
Hide implementation details.
Update #3959.
|
|
|
|
| |
Update #3959.
|
|
|
|
|
| |
Do not access executing->current_state outside the protection of the
thread state lock. Add missing state with a comment.
|
|
|
|
|
| |
Fix linker errors in the minimum test program on some BSPs introduced by
ced28f2cfcee6d32ad7bb72e16b235212eb2eaaf.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only provide the file descriptor array if
CONFIGURE_MAXIMUM_FILE_DESCRIPTORS > 0. If someone configured
CONFIGURE_MAXIMUM_FILE_DESCRIPTORS == 0 and the appplication uses
something which requires a file descriptor, then a linker error will
show up. An alternative would be to add a zero-length array
rtems_libio_iops[ 0 ] to librtemscpu.a which would be used in this
case.
Conditionally include some header files.
|
|
|
|
|
|
|
| |
Remove the superfluous invalid name check since the object creation
directives ensure that objects with such a name cannot exist. Also
finding an object with such a name would be no catastrophy if it really
exists.
|
|
|
|
|
|
|
|
|
|
| |
Simplify object name to identifier directives. Using
_RTEMS_Name_to_id() to implement the directives enables a tail call
optimization.
Change license to BSD-2-Clause according to file history.
Update #3053.
|
| |
|
| |
|
| |
|
|
|
|
| |
Close #4061.
|
|
|
|
| |
Prefer macros with a proper namespace.
|
|
|
|
|
|
|
| |
swab(3) has restrict qualifiers for src and dst.
Avoid relying on undefined overlapping swab behavior.
Obtained From: OpenBSD
|
|
|
|
|
|
|
| |
The argument to the ctype functions must be an int and the value of the
character must be representable as an unsigned char or equal to the
value of the macro EOF. If the argument has any other value, the
behavior is undefined.
|
| |
|
|
|
|
|
|
|
|
|
| |
The RTEMS_BARRIER_AUTOMATIC_RELEASE and RTEMS_BINARY_SEMAPHORE options
had the same value. In order to better detect a misuse of option values
(for example using RTEMS_BINARY_SEMAPHORE for rtems_barrier_create()),
the options should have unique values.
Close #4054.
|
|
|
|
| |
Update #3199.
|
|
|
|
|
|
| |
Do not set up a new test steps environment.
Update #3199.
|
|
|
|
|
|
|
|
|
|
|
| |
Normally, the expected test step must be a compile time constant. Allow
variable expected test steps for the T_step() and T_assert_step(). This
can be used for parameterized test loops with individual fixtures.
Remove the ability to use custom failure messages due to some
implementation constraints.
Update #3199.
|
|
|
|
|
|
| |
Support a new test plan for each nested fixture.
Update #3199.
|
|
|
|
| |
Update #3199.
|
|
|
|
| |
Update #3199.
|
|
|
|
| |
Update #3199.
|
|
|
|
| |
Update #3199.
|
|
|
|
| |
Update #3199.
|
|
|
|
|
|
|
| |
Return the produced character count. There is no need for a NUL
termination.
Update #3199.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In the nominal case checked by spsysinit01, obj_err is unmodified if
_POSIX_Shm_Get_by_name returns non-NULL. In the case of shm_unlink, this means
an uninitialized value is passed into the switch and it appears tests using it
were passing by virtue of the stack having the right value on it in most cases.
This now checks obj_err only if _POSIX_Shm_Get_by_name returns NULL.
Close #4016
|
|
|
|
|
|
|
|
| |
Add support to record thread switch events. This can be used to check
that a blocking operation results in the expected sequence of thread
switches.
Update #3199.
|
|
|
|
| |
Update #3199.
|
|
|
|
|
| |
Clearing the std file handles when the main loop exited crashes
telnetd as it reuses its session threads.
|
|
|
|
| |
Update #3199.
|
|
|
|
|
|
|
|
|
| |
Add a new directory for Doxygen-specific documentation content. Add a
Doxygen only header file containing documentation of the application
configuration options. The header file is generated from specification
items.
Close #3994.
|
| |
|
|
|
|
| |
Update #3199.
|
| |
|
|
|
|
| |
This mutex is used to maintain termios internal data structures.
|
|
|
|
|
|
|
| |
This addresses compiler warnings like this:
warning: array subscript 0 is outside the bounds of an interior
zero-length array 'abc[0]' [-Wzero-length-bounds]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently if mount fails, a converter isn't destroyed. We have to take
care of two cases:
1. The user doesn't provide a converter.
In this case mounting a dosfs creates a default converter. This patch
makes sure that the converter is destroyed again if mount failes for
this case.
2. The user provides a converter.
In this case it's not sure that the dosfs specific routines are reached
because mount can fail before that. Therefore the user has to destroy
the converter himself again. This patch adds a documentation for that
and implements it in the media server.
Closes #4042.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add rtems_interrupt_server_destroy().
Before this patch, the only way to create interrupt servers was
rtems_interrupt_server_initialize(). This function creates the default
interrupt server and in SMP configurations additional interrupt servers
for the additional processors. The interrupt server is heavily used by
libbsd. This includes the epoch based reclamation which performs time
consuming resource and memory deallocation work. This does not work well
with time critical services, for example an UART over SPI or I2C. One
approach to address this problem is to allow the application to create
custom interrupt servers with the right priority and task properties.
The interrupt server API accounted for this, however, it was not
implemented before this patch.
Close #4034.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make sure that the esp is restored before the eflags register.
When the init task is initially restored, system interrupts are activated when the
eflags register is loaded.
If the esp register still points to an address in the interrupt stack
area (from early system initlization) the ISR might overwrite its own
stack.
Closes #4031
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only include the deferred free support if free() is actually used by the
application.
The free() implementation in RTEMS supports that allocated memory is
freed in interrupt context. Since the heap is protected by a mutex, the
frees issued in interrupt context cannot immediately be freed to the
heap, instead they are placed on a deferred free list. This list is
emptied by the core allocation function
rtems_heap_allocate_aligned_with_boundary(). This adds a dependency to
free() in rtems_heap_allocate_aligned_with_boundary(). In order to
better support applications which only allocate memory and never free
it, this dependency should be avoided. Provide a weak default
implementation of _Malloc_Process_deferred_frees() for
rtems_heap_allocate_aligned_with_boundary(). In the free() module
provide the strong implementation.
Close #4032.
|
|
|
|
| |
Update #4032.
|
|
|
|
| |
Update #3199.
|