summaryrefslogtreecommitdiff
path: root/testsuites (follow)
AgeCommit message (Collapse)Author
2020-04-29libtests/heapwalk: Fix for RTEMS_DEBUGSebastian Huber
Update #2962.
2020-04-17sapi: Add param check to rtems_extension_create()Sebastian Huber
Check that the extensions table is not NULL. Change format. Update #3953.
2020-04-16Canonicalize config.h includeSebastian Huber
Use the following variant which was already used by most source files: #ifdef HAVE_CONFIG_H #include "config.h" #endif
2020-04-15libmisc/shell: Fix the handling of joel scripts in telnetChris Johns
- Fix the passing of std[in/out] to child threads - Fix deleting of managed memory in the key destructor - Only set the key in the main loop thread - Only allocate a shell env outside of the main loop - Fix memory leak if the task start fails - Remove error level from shell env, it cannot be returned this way. Add exit_code but the API is broken so it cannot be returned. Closes #3859
2020-04-14score: Check time of day in _TOD_Set()Sebastian Huber
Close #3949.
2020-04-14score: Return status in _TOD_Set()Sebastian Huber
Update #3949.
2020-04-08score: Delete RTEMS_DECLARE_GLOBAL_SYMBOL()Sebastian Huber
Delete unused RTEMS_DECLARE_GLOBAL_SYMBOL(). Update #3799.
2020-04-07Tests for inttype.h methodsEshan dhawan
2020-04-06tests: Small memory exclude for record02Sebastian Huber
Update #3938.
2020-03-31testsuites: Remove CONFIGURE_MALLOC_STATISTICSSebastian Huber
This configuration option is obsolete since 2014. Update #1367.
2020-03-23sptests/sptls02: Add test caseSebastian Huber
Add a test case which requires the use of __tls_guard() and __tls_init(). Change license to BSD-2-Clause.
2020-03-18record: Add rtems_record_dump()Sebastian Huber
Add rtems_record_dump_base64() and rtems_record_dump_base64_zlib(). Add CONFIGURE_RECORD_FATAL_DUMP_BASE64 and CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB configuration options. Update #3904.
2020-03-16score: Add _IO_Base64()Sebastian Huber
Update #3904.
2020-03-13libio: Robust file descriptor reference countingSebastian Huber
There was a race conditon in the reference counting of file descriptors during a close() operation. After the call to the close handler, the rtems_libio_free() function cleared the flags to zero. However, at this point in time there may still exist some holders of the file descriptor. With RTEMS_DEBUG enabled this could lead to failed assertions in rtems_libio_iop_drop(). Change the code to use only atomic read-modify-write operations on the rtems_libio_iop::flags.
2020-03-09imfs: Replace devfs with an IMFS specializationSebastian Huber
Add a simplified path evaluation function IMFS_eval_path_devfs() for a device only IMFS configuration. The code size can be further reduced by the application if it disables the support for legacy IO drivers via: #define CONFIGURE_IMFS_DISABLE_MKNOD #define CONFIGURE_IMFS_DISABLE_MKNOD_DEVICE Obsolete CONFIGURE_MAXIMUM_DEVICES. Remove BSP_MAXIMUM_DEVICES. Update #3894. Update #3898.
2020-03-04imfs: Add IMFS_add_node()Sebastian Huber
Update #3894.
2020-03-04config: Remove <rtems/btimer.h> includeSebastian Huber
The use of CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER does not define anything, so remove the <rtems/btimer.h> include. Update #3875.
2020-03-04sptests/spheapprot: Fix warningSebastian Huber
2020-03-03fstests/fsrename: Rename a file twiceSebastian Huber
2020-03-03sptests/spextensions01: Add commentSebastian Huber
Update #3885.
2020-03-03rtems: Add rtems_scheduler_map_priority_from_posix()Sebastian Huber
Update #3881.
2020-03-03rtems: Add rtems_scheduler_map_priority_to_posix()Sebastian Huber
Update #3881.
2020-02-28score: Fix context switch extensions (SMP)Sebastian Huber
In uniprocessor and SMP configurations, the context switch extensions were called during _Thread_Do_dispatch(): void _Thread_Do_dispatch( Per_CPU_Control *cpu_self, ISR_Level level ) { Thread_Control *executing; executing = cpu_self->executing; ... do { Thread_Control *heir; heir = _Thread_Get_heir_and_make_it_executing( cpu_self ); ... _User_extensions_Thread_switch( executing, heir ); ... _Context_Switch( &executing->Registers, &heir->Registers ); ... } while ( cpu_self->dispatch_necessary ); ... } In uniprocessor configurations, this is fine and the context switch extensions are called for all thread switches except the very first thread switch to the initialization thread. However, in SMP configurations, the context switch may be invalidated and updated in the low-level _Context_Switch() routine. See: https://docs.rtems.org/branches/master/c-user/symmetric_multiprocessing_services.html#thread-dispatch-details In case such an update happens, a thread will execute on the processor which was not seen in the previous call of the context switch extensions. This can confuse for example event record consumers which use events generated by a context switch extension. Fixing this is not straight forward. The context switch extensions call must move after the low-level context switch. The problem here is that we may end up in _Thread_Handler(). Adding the context switch extensions call to _Thread_Handler() covers now also the thread switch to the initialization thread. We also have to save the last executing thread (ancestor) of the processor. Registers or the stack cannot be used for this purpose. We have to add it to the per-processor information. Existing extensions may be affected, since now context switch extensions use the stack of the heir thread. The stack checker is affected by this. Calling the thread switch extensions in the low-level context switch is difficult since at this point an intermediate stack is used which is only large enough to enable servicing of interrupts. Update #3885.
2020-02-26config: Initialize IO drivers on demandSebastian Huber
2020-02-25config: Remove CONFIGURE_DISABLE_SMP_CONFIGURATIONSebastian Huber
The CONFIGURE_DISABLE_SMP_CONFIGURATION configuration option and rtems_configuration_is_smp_enabled() were added during the SMP support development cycle as a workaround to fix some testsuite failures in SMP configurations. All use cases were replaced with tests for specific conditions. The configuration option and test macro were undocumented. Close #3876.
2020-02-25config: CONFIGURE_INIT_TASK_INITIAL_MODESSebastian Huber
Determine the default for CONFIGURE_INIT_TASK_INITIAL_MODES depeding on whether RTEMS_SMP is defined or not. In the tests, use CONFIGURE_INIT_TASK_INITIAL_MODES to explicitly request RTEMS_NO_PREEMPT mode if necessary. Update #3876.
2020-02-25libio: Add POSIX user environment pointer to TCBSebastian Huber
The IO library used a POSIX key to store an optional POSIX user environment pointer. This pulled in the POSIX keys support in every application configuration. Add a user environment pointer to the thread control block (TCB) instead. Applications which do not need the POSIX user environment will just get an overhead of one pointer per thread. Close #3882.
2020-02-25config: Remove CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLESebastian Huber
The CONFIGURE_HAS_OWN_INIT_TASK_TABLE and CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE are the last *_HAS_OWN_* configuration options. These two options are probably unused, see also: * https://lists.rtems.org/pipermail/users/2019-April/033129.html * https://lists.rtems.org/pipermail/users/2019-April/033130.html Removing them simplifies the configuration. If there is a real user need which shows up after the removal, we can resurrect them on demand. Using CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE would have required the use of the undocumented CONFIGURE_POSIX_INIT_THREAD_TABLE_NAME and CONFIGURE_POSIX_INIT_THREAD_TABLE_SIZE configuration options. Update #3874.
2020-02-25config: Bring back RTEMS 4.11 configuration tableSebastian Huber
This improves API backward compatibility of RTEMS 5.1 to previous versions.
2020-02-25config: Remove CONFIGURE_HAS_OWN_INIT_TASK_TABLESebastian Huber
The CONFIGURE_HAS_OWN_INIT_TASK_TABLE and CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE are the last *_HAS_OWN_* configuration options. These two options are probably unused, see also: * https://lists.rtems.org/pipermail/users/2019-April/033129.html * https://lists.rtems.org/pipermail/users/2019-April/033130.html Removing them simplifies the configuration. If there is a real user need which shows up after the removal, we can resurrect them on demand. Using CONFIGURE_HAS_OWN_INIT_TASK_TABLE would have required the use of the undocumented CONFIGURE_INIT_TASK_TABLE and CONFIGURE_INIT_TASK_TABLE_SIZE configuration options. Update #3873.
2020-02-25sptests/spcbssched03: Include missing header fileSebastian Huber
Update #3875.
2020-02-25libtests/stackchk: Include missing header fileSebastian Huber
Update #3875.
2020-02-25mptests/mp14: Include missing header fileSebastian Huber
Include <mpci.h> for MPCI_Print_statistics(). Update #3875.
2020-02-18testsuite/newlib: Check newlib does not touch an assigned std FILE pointerChris Johns
Update #3870
2020-02-17score: Remove unused _Workspace_Allocate_aligned()Sebastian Huber
2020-02-14smpschededf02: Improve readabilitySebastian Huber
2020-02-14smpfatal09: Fix test caseSebastian Huber
Update #3838.
2020-02-12score: Simplify _Thread_Initialize()Sebastian Huber
Allocate new thread queue heads during objects information extend. This removes an error case and the last dependency on the workspace in _Thread_Initialize(). Update #3835.
2020-02-12score: Add _Freechain_Pop()Sebastian Huber
Update #3835.
2020-02-12score: Add _Freechain_Is_empty()Sebastian Huber
Update #3835.
2020-02-12score: Statically allocate idle/MPCI stacksSebastian Huber
Place idle and MPCI stacks into extra linker sections. This can be optionally used by applications to control the placement of the stacks. Update #3835.
2020-02-11sptests/spregion_err01: Reduce memory demandsSebastian Huber
Make functions and data static.
2020-02-06config: Add CONFIGURE_DIRTY_MEMORYSebastian Huber
Replace the BSP_DIRTY_MEMORY BSP option with a CONFIGURE_DIRTY_MEMORY configuration option. Update #3843.
2020-02-06sysinit: Add RTEMS_SYSINIT_ZERO_MEMORYSebastian Huber
Use a dedicate system initialization step to zero the memory used for the workspace and C program heap. This avoids dead code in case CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY is not configured.
2020-02-06config: CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLYSebastian Huber
Canonicalize CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY and use defined/undefined instead of TRUE/FALSE. Close #3862.
2020-02-06samples/iostream: Simplify configurationSebastian Huber
Remove CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY since it is not needed and just increases the boot time.
2020-02-04libtests/malloc04: Fix typoSebastian Huber
Update #3838.
2020-02-04fstests/fsstatvfs: Include missing header fileSebastian Huber
2020-02-04config: Add CONFIGURE_VERBOSE_SYSTEM_INITIALIZATIONSebastian Huber
Update #3861.
2020-02-04sysinit: Add RTEMS_SYSINIT_ORDER_LAST_BUT_[1-9]Sebastian Huber
Update #3838.