summaryrefslogtreecommitdiffstats
path: root/testsuites (follow)
Commit message (Collapse)AuthorAgeFilesLines
* libtests/dl10: Enter shell on demandSebastian Huber2022-01-141-10/+23
| | | | | Use rtems_shell_wait_for_input() similar to other potentially interactive test programs.
* libtests/ofw01: Fix device tree blob alignmentSebastian Huber2022-01-131-2/+2
| | | | A device tree blob must be aligned on an 8-byte boundary.
* spintrcritical21: Clear pending eventsSebastian Huber2022-01-121-0/+16
| | | | | The test runner checks that there are no pending events after a test case.
* Fix device tree blob alignmentSebastian Huber2022-01-111-2/+2
| | | | A device tree blob must be aligned on an 8-byte boundary.
* libtests/ofw01: Fix wrapped in bsp_fdt_get()Sebastian Huber2022-01-111-1/+15
| | | | | Use the stack pointer to check if we have to return the real device tree since bsp_fdt_get() may get called before the BSS is cleared to zero.
* untar: Make behavior similar to GNU or BSD tarChristian Mauderer2021-12-094-9/+245
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RTEMS untar implementation had problems with overwriting or integrating archives into existing directory structures. This patch adapts the behavior to mimic that of a GNU tar or BSD tar and extends the tar01 test to check for the behavior. That is: * If a directory structure exists, the files from the archive will be integrated. Existing files are overwritten. * If a file exists and the archive contains a directory with the same name, the file is removed and a directory is created. In the above example: if l1/l2 is a file it will be overwritten with a new directory. * If a directory exists and the archive contains a file with the same name, the directory will be replaced if it is empty. If it contains files, the result is an error. * An archive also can contain only a file without the parent directories. If in that case one of the parent directories exists as a file extracting the archive results in an error. In the example: if l1/l2 is a file and the archive doesn't contain the directories but only the file l1/l2/x.txt that would be an error. * In case of an error, it is possible that the archive has been partially extracted. Closes #4568
* libc: Optimize malloc() initializationSebastian Huber2021-11-301-15/+22
| | | | | | | | | | | | | | | | The BSPs provide memory for the separate C Program Heap initialization via _Memory_Get(). Most BSPs provide exactly one memory area. Only two BSPs provide more than one memory area (arm/altera-cyclone-v and bsps/powerpc/mpc55xxevb). Only if more than one memory area is provided, there is a need to use _Heap_Extend(). Provide two implementations to initialize the separate C Program Heap and let the BSP select one of the implementations based on the number of provided memory areas. This gets rid of a dependency on _Heap_Extend(). It also avoids dead code sections for most BSPs. Change licence to BSD-2-Clause according to file history. Update #3053.
* */aclocal/*: Remove remnants of autoconf/automae build systemJoel Sherrill2021-11-2922-521/+0
| | | | Updates #4081.
* score: Simplify thread wait state handlingSebastian Huber2021-11-234-20/+6
| | | | | | | | | | Remove the THREAD_WAIT_STATE_READY_AGAIN and simply use the initial value to indicate that a thread does not wait on something. Rename THREAD_WAIT_FLAGS_INITIAL to THREAD_WAIT_STATE_READY. This change is necessary so that _Thread_Continue() can be called for threads which never waited on something (for example dormant threads). Update #4546.
* score: Add node to insert to Chain_Node_orderSebastian Huber2021-11-231-1/+7
| | | | | | This allows to use additional members of the nodes for comparision. Update #4534.
* rtems: Use RTEMS_WHO_AM_I for rtems_task_ident()Sebastian Huber2021-11-1822-23/+23
|
* rtems: Simplify rtems_semaphore_set_priority()Sebastian Huber2021-11-151-1/+1
| | | | | Do not write to the object referenced by old_priority in error paths. This is in line with other directives.
* score: Port large time delta support to RTEMSSebastian Huber2021-11-151-2/+2
|
* score: Introduce CPU budget operationsSebastian Huber2021-11-151-0/+8
| | | | | | | | | | | | | | This patch set replaces the CPU budget algorithm enumeration with a set of CPU budget operations which implement a particular CPU budget algorithm. This helps to hide the CPU budget algorithm implementation details from the general thread handling. The CPU budget callouts are turned into CPU budget operations. This slightly reduces the size of the thread control block. All schedulers used the default scheduler tick implementation. The tick scheduler operation is removed and the CPU budget operations are directly used in _Watchdog_Tick() if the executing thread uses a CPU budget algorithm. This is performance improvement for all threads which do not use a CPU budget algorithm (default behaviour).
* libtests/calloc.c: Fix reported memory leakzack leung2021-11-031-1/+3
| | | | | | | | This fix came from Code Inspector, flagged by one of the analysis that was done. This test code is compiled only but better to address the issues so future static analysis reports will not include it.
* testsuite: Add machine exception signal map testKinsey Moore2021-10-294-0/+138
| | | | | Add a test to verify that mapping of machine exceptions to POSIX signals operates properly when the application requests it.
* testsuite: Add machine exception resume testKinsey Moore2021-10-293-0/+98
| | | | | Add a test to verify that intercepted exceptions can be resolved and execution can be resumed.
* sptests/sp69: Remove test caseSebastian Huber2021-10-251-25/+0
| | | | | | This error condition no longer exists. Update #4528.
* Add support for IDLE Thread stack allocatorJoel Sherrill2021-10-116-0/+228
| | | | | | | | Add a stack allocator hook specifically for allocation of IDLE thread stacks. This allows the user to decide if IDLE thread stacks are statically allocated or handled by the same custom allocator mechanism as other thread stacks. Closes #4524.
* score: _Thread_queue_Surrender_priority_ceiling()Sebastian Huber2021-10-111-0/+43
| | | | | | | | Do not use a direct thread dispatch in _Thread_queue_Surrender_priority_ceiling() since it may be used in condition variables using POSIX mutexes. Close #4526.
* testsuites/fstests: Fix uninitialized utimbuf structsAlex White2021-10-042-2/+2
| | | | | | | | | | | | The utimbuf structs in fsimfsconfig01 and fsimfsconfig02 were being passed to utime uninitialized. This did not cause problems until utime was changed to use utimensat behind the scenes. Now that utimensat is called, the values of the utimbuf struct are checked, and EINVAL is set for invalid values. The utimebuf structs in these tests could contain invalid values since they are uninitialized. By zero-initializing the utimbuf structs, we ensure that they pass the checks in utimensat and that errno is set to the expected ENOTSUP.
* cpukit: Add AArch64 SMP SupportKinsey Moore2021-09-211-1/+1
| | | | This adds SMP support for AArch64 in cpukit and for the ZynqMP BSPs.
* testsuites/smpmulticast01: Enforce step orderingKinsey Moore2021-09-211-0/+1
| | | | | | The order in which step checks for 1 and 2 are not rigidly defined and may actually occur in either order depending on how the threads execute. This waits for the job to complete to enforce the existing ordering.
* build: Remove old build systemSebastian Huber2021-09-21147-11195/+0
| | | | | Close #3250. Close #4081.
* pxcdevctl: Adjust for standardRyan Long2021-09-201-23/+46
| | | | | | | | psxdevctl is supposed to return the value in errno. Before, it was returning -1 and setting errno. Changed the tests to reflect these changes. Added code from RRADE's posix_devctl.c. Closes #4506
* score: Change TOD_LATEST_YEAR to 2099Sebastian Huber2021-09-062-42/+9
| | | | | | | | This simplifies the implementation a bit. Declare _TOD_Days_to_date[] in <rtems/score/todimpl.h>. Make _TOD_Days_per_month[] and _TOD_Days_since_last_leap_year[] static. Update #4338.
* score: Limit the CLOCK_REALTIME settingSebastian Huber2021-09-061-0/+14
| | | | | Limit the CLOCK_REALTIME setting to ensure that the CLOCK_REALTIME is defined for a system uptime of at least 114 years.
* Improve test of rtems_interrupt_get_affinity()Sebastian Huber2021-09-021-18/+21
| | | | | Use a CPU set which is larger than the internal processor set representation.
* validation: Improve generated test codeSebastian Huber2021-09-0220-1331/+1679
| | | | | | | Move the transition map members of the test context to a dedicated structure. Move the transition variant pre-condition prepare, action, and post-condition checks to a separate function to reduce the indentation level and allow skipping of transition variants.
* psxtests/psxconfstr: Fix test caseSebastian Huber2021-08-301-13/+12
| | | | Update #3373.
* smpfatal01: Fix test time out on sparc/leon3Sebastian Huber2021-08-301-1/+1
| | | | | End the test on the processor which triggers the test condition. This avoids endless power down loops in the sparc/leon3 BSP.
* confstr() support for RTEMSEshan dhawan2021-08-185-0/+126
| | | | | | | | Closes #3373 confstr() style update Signed-off-by: Eshan Dhawan <eshandhawan51@gmail.com>
* score: Replace priority prepend it with an enumSebastian Huber2021-08-121-33/+36
| | | | | | | | Use the new Priority_Group_order enum instead of a boolean to indicated if a priority should be inserted as the first or last node into its priority group. This makes the code more expressive. It is also a bit more efficient since a branch in _Scheduler_Node_set_priority() is avoided and a simple bitwise or operation can be used.
* Test needed for timer_create with CLOCK_MONOTONCZacchaeus Leung2021-08-112-0/+31
| | | | | | | | the timer_create() method can use CLOCK_MONOTONIC but there was no test for this. Also it implements the functionality to create a CLOCK_MONOTONIC timer and gettime() . Closes #3888
* Turn off executable permissions for a number of source filesJoel Sherrill2021-08-09134-0/+0
| | | | | | | Cloning under Cygwin turned off executable permission on these files. This shows them as modified even though they have not explicitly been touched. Executable permission should not have been on for these files so this is just a minor clean up.
* sptests: CONFIGURE_MEMORY_PER_TASK_FOR_SCHEDULERSebastian Huber2021-07-302-4/+0
| | | | | | Remove obsolete CONFIGURE_MEMORY_PER_TASK_FOR_SCHEDULER application configuration option which is unsupported since commit 69aa33490b1cd357519ab70b15ad150e11bb752e.
* score: Change _SMP_Send_message() parameter typeSebastian Huber2021-07-292-5/+11
| | | | | Use the processor control to specify the target processor since this is what the callers have available.
* score: Add _Per_CPU_Submit_job()Sebastian Huber2021-07-292-10/+3
|
* score: Simplify SMP processor state handlingSebastian Huber2021-07-284-23/+61
| | | | | | | | The per-CPU states which control the SMP system initialization were added quite early during the SMP support development. Replace this initial implementation with a simplified one. There is no longer a global SMP lock required which serialized the state changes of all processors. The new implementation better integrates with the per-CPU jobs.
* score: Remove processor event broadcast/receiveSebastian Huber2021-07-285-12/+10
| | | | | | Remove _CPU_SMP_Processor_event_broadcast() and _CPU_SMP_Processor_event_receive(). These functions are hard to use since they are subject to the lost wake up problem.
* score: Remove _Internal_errors_What_happenedSebastian Huber2021-07-281-2/+0
| | | | | | | | | | Users have access to the fatal error source and code though the fatal error extension. The user-specific fatal error handling should be done in statically initialized fatal error handlers. The _Internal_errors_What_happened was updated after the fatal error extension. In addition, there was no API to get the information stored in _Internal_errors_What_happened. In SMP configurations, this object could contain a mix of different fatal errors. Remove this object to save some bytes of storage.
* validation: Test rtems_interrupt_handler_iterate()Sebastian Huber2021-07-261-0/+636
| | | | Update #3269.
* validation: Test rtems_interrupt_set_affinity()Sebastian Huber2021-07-261-0/+670
| | | | Update #3269.
* validation: Test rtems_interrupt_get_affinity()Sebastian Huber2021-07-261-0/+683
| | | | Update #3269.
* validation: Test rtems_interrupt_raise_on()Sebastian Huber2021-07-263-2/+721
| | | | Update #3269.
* validation: Test rtems_interrupt_is_pending()Sebastian Huber2021-07-261-0/+629
| | | | Update #3269.
* validation: Test rtems_interrupt_clear()Sebastian Huber2021-07-261-0/+586
| | | | Update #3269.
* validation: Test rtems_interrupt_raise()Sebastian Huber2021-07-261-0/+576
| | | | Update #3269.
* validation: Test rtems_interrupt_entry_remove()Sebastian Huber2021-07-261-0/+1432
| | | | Update #3269.
* validation: Test rtems_interrupt_entry_install()Sebastian Huber2021-07-261-0/+1364
| | | | Update #3269.