| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Add pthread_getname_np() and pthread_setname_np().
Update #2858.
|
| |
|
| |
|
|
|
|
| |
Update #2825.
|
|
|
|
| |
Update #2825.
|
|
|
|
|
|
|
|
|
| |
The fatal is internal indicator is redundant since the fatal source and
error code uniquely identify a fatal error. Keep the fatal user
extension is internal parameter for backward compatibility and set it to
false always.
Update #2825.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Turn pthread_spinlock_t into a self-contained object. On uni-processor
configurations, interrupts are disabled in the lock/trylock operations
and the previous interrupt status is restored in the corresponding
unlock operations. On SMP configurations, a ticket lock is a acquired
and released in addition.
The self-contained pthread_spinlock_t object is defined by Newlib in
<sys/_pthreadtypes.h>.
typedef struct {
struct _Ticket_lock_Control _lock;
__uint32_t _interrupt_state;
} pthread_spinlock_t;
This implementation is simple and efficient. However, this test case of
the Linux Test Project would fail due to call of printf() and sleep()
during spin lock ownership:
https://github.com/linux-test-project/ltp/blob/master/testcases/open_posix_testsuite/conformance/interfaces/pthread_spin_lock/1-2.c
There is only limited support for profiling on SMP configurations.
Delete CORE spinlock implementation.
Update #2674.
|
|
|
|
|
|
| |
Avoid rtems_semaphore_flush() to reduce the maximum thread dispatch
disabled time of this test. Remove superfluous yield and malloc().
Ensure that no resource leak occurs.
|
|
|
|
|
|
|
|
| |
This makes the new Termios devices independent of device major/minor
numbers. It enables BSP independent Termios device drivers which may
reside in the cpukit domain. These drivers require an IMFS and do not
work with the device file system. However, the device file system
should go away in the future.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to POSIX priority value returned from pthread_getschedparam()
shall be the value specified by the most recent pthread_setschedparam(),
pthread_setschedprio(), or pthread_create() call affecting the target
thread. Read this as though a temporary lower priority due to the
sporadic server policy shall not be visible through
pthread_getschedparam(). Thus, use rtems_task_set_priority() to get the
current priority of the threads.
Use a priority ceiling mutex to prevent sporadic server priority
adjustments.
|
|
|
|
| |
updates #2732
|
|
|
|
|
| |
The dummy for setgroups() allows applications using it to build (for example
civetweb webserver).
|
|
|
|
|
|
| |
Increase the invalid priority values to support test runs with
alternative schedulers offering a significant higher maximum priority
value, e.g. EDF.
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
updates #2608.
|
|
|
|
| |
Update #2738.
|
|
|
|
| |
Update #2738.
|
| |
|
|
|
|
| |
Close #2734.
|
|
|
|
| |
Close #2735.
|
|
|
|
|
|
| |
Return the unmodified thread priority value according to POSIX.
Close #2736.
|
|
|
|
| |
Close #2721.
|
|
|
|
| |
Close #2720.
|
|
|
|
| |
Close #2719.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change adds rtems_printf and related functions and wraps the
RTEMS print plugin support into a user API. All references to the
plugin are removed and replaced with the rtems_printer interface.
Printk and related functions are made to return a valid number of
characters formatted and output.
The function attribute to check printf functions has been added
to rtems_printf and printk. No changes to remove warrnings are part
of this patch set.
The testsuite has been moved over to the rtems_printer. The testsuite
has a mix of rtems_printer access and direct print control via the
tmacros.h header file. The support for begink/endk has been removed
as it served no purpose and only confused the code base. The testsuite
has not been refactored to use rtems_printf. This is future work.
|
| |
|
|
|
|
| |
Close #2718.
|
| |
|
|
|
|
| |
Update #2714.
|
|
|
|
|
|
| |
Avoid output in signal handler to not disturb the timings which are
checked in this test. Use asserts to ensure proper signal handler
invocations.
|
|
|
|
|
|
| |
POSIX mandates that an error code is returned and not -1 plus errno.
Close #2715.
|
|
|
|
| |
Update #2714.
|
| |
|
|
|
|
|
|
|
| |
POSIX recommends ESRCH in case no thread exists for the specified
identifier.
Close #2713.
|
|
|
|
|
| |
Update #2494.
Update #2555.
|
|
|
|
|
|
| |
Account for the terminating null character. Use _POSIX_PATH_MAX instead
of NAME_MAX according to _POSIX_Semaphore_Manager_initialization() and
_POSIX_Message_queue_Manager_initialization().
|
|
|
|
|
|
|
|
|
|
|
|
| |
The mq_open() function returns a descriptor to a POSIX message queue
object identified by a name. This is similar to sem_open(). In
contrast to the POSIX semaphore the POSIX message queues use a separate
object for the descriptor. This extra object is superfluous, since the
object identifier can be used directly for this purpose, just like for
the semaphores.
Update #2702.
Update #2555.
|
|
|
|
|
|
| |
Remove unused supports_global parameter. Convert
_Objects_Initialize_information() to a macro to avoid use of
RTEMS_MULTIPROCESSING define for each caller.
|
|
|
|
|
|
|
| |
Delete _POSIX_Mutex_Get(). Use _POSIX_Mutex_Get_interrupt_disable()
instead.
Update #2555.
|
|
|
|
|
|
|
| |
Use proper CORE_semaphore_Status for _CORE_semaphore_Flush() and
_CORE_semaphore_Destroy() operations.
Close #2696.
|
|
|
|
|
|
|
|
|
| |
This is the very simple implementation specified by the Open Group
for implementations with 1:1 kernel thread to user thread mappings.
http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_getconcurrency.html
updates #2680.
|
|
|
|
|
|
|
|
|
|
| |
POSIX key destructors must be called during thread restart. Just like
the POSIX cleanup handlers. This ensures that the TLS object
destructors are called during thread restart for example. It is
important for the global construction, which uses a thread restart to
run the Init task in a clean environment.
Close #2689.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Replace _Objects_Name_to_id_string() with _Objects_Get_by_name() since
all users of this function are interested in the object itself and not
the identifier.
Use the object allocator lock to protect the search.
Update #2555.
|
|
|
|
|
|
|
|
|
| |
Use a red-black tree instead of delta chains.
Close #2344.
Update #2554.
Update #2555.
Close #2606.
|
|
|
|
| |
Update #2344.
|
|
|
|
| |
Update #2606.
|
| |
|
|
|
|
|
|
|
| |
Fix link-time errors introduced by
e39cdb875ce7458787b0be173f2f7893a774a673.
Update #2531.
|