Commit Graph

802 Commits

Author SHA1 Message Date
Sebastian Huber
cc3fd8fcf1 libtest: Add T_interrupt_test()
Update #3199.
2020-07-23 09:27:47 +02:00
Sebastian Huber
d702c9f47d libtest: Make check message optional
This macro magic is in line with C11 and C++11, but limits the maximum
count of arguments.

Update #3199.
2020-07-23 09:27:47 +02:00
Sebastian Huber
cb3c6bdc0f libtest: Add push/pop fixture support
Update #3199.
2020-07-23 09:27:47 +02:00
Sebastian Huber
6b27e3251e libtest: Support custom scope messages via fixture
Update #3199.
2020-07-23 09:27:47 +02:00
Sebastian Huber
361404e87d libtest: Move <t.h> to <rtems/test.h>
Update #3199.
2020-07-23 09:27:45 +02:00
Sebastian Huber
9de8d61a9a libtest: <rtems/test.h> to <rtems/test-info.h>
Rename this header file to later move <t.h> to <rtems/test.h>.  The main
feature provided by <rtems/test-info.h> is the output of standard test
information which is consumed by the RTEMS Tester.

Update #3199.
2020-07-23 09:27:10 +02:00
Sebastian Huber
ea2d9237fc libtests/tar01: Remove files of tar01.tar archive
Update #3968.
2020-05-08 15:12:40 +02:00
Sebastian Huber
ef9517b7d5 libtests/tar0[12]: Add tar archive
Do not generate the test tar archive on the host computer since not all
file systems support symbolic links.

Close #3968.
2020-05-07 12:31:56 +02:00
Chris Johns
e78c0806cb libtest/dl09: Test trampolines only when supported 2020-05-06 08:46:57 +10:00
Chris Johns
3f50e8e671 testsuite/dl06: Add a local define to control tracing
Closes #3969
2020-05-05 15:00:45 +10:00
Sebastian Huber
a8f0d941c3 libtests/heapwalk: Fix for RTEMS_DEBUG
Update #2962.
2020-04-29 06:58:16 +02:00
Sebastian Huber
80cf60efec Canonicalize config.h include
Use the following variant which was already used by most source files:

  #ifdef HAVE_CONFIG_H
  #include "config.h"
  #endif
2020-04-16 07:30:00 +02:00
Chris Johns
d007cc2cee libmisc/shell: Fix the handling of joel scripts in telnet
- 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-15 08:30:30 +10:00
Sebastian Huber
8b8c068df3 testsuites: Remove CONFIGURE_MALLOC_STATISTICS
This configuration option is obsolete since 2014.

Update #1367.
2020-03-31 15:21:58 +02:00
Sebastian Huber
ab42b3e100 record: Add rtems_record_dump()
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-18 07:20:52 +01:00
Sebastian Huber
0161b93d50 imfs: Replace devfs with an IMFS specialization
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-09 17:26:54 +01:00
Sebastian Huber
c7f748a100 config: Remove CONFIGURE_DISABLE_SMP_CONFIGURATION
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-25 07:18:36 +01:00
Sebastian Huber
ba74ebde74 libio: Add POSIX user environment pointer to TCB
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-25 07:18:26 +01:00
Sebastian Huber
5d1d3485cb libtests/stackchk: Include missing header file
Update #3875.
2020-02-25 07:15:17 +01:00
Chris Johns
3f7ebddfa4 testsuite/newlib: Check newlib does not touch an assigned std FILE pointer
Update #3870
2020-02-18 08:47:47 +11:00
Sebastian Huber
ccaec9661f libtests/malloc04: Fix typo
Update #3838.
2020-02-04 11:25:45 +01:00
Sebastian Huber
eea21eaca1 bsps: Rework work area initialization
The work area initialization was done by the BSP through
bsp_work_area_initialize(). This approach predated the system
initialization through the system initialization linker set. The
workspace and C program heap were unconditionally initialized.  The aim
is to support RTEMS application configurations which do not need the
workspace and C program heap.  In these configurations, the workspace
and C prgram heap should not get initialized.

Change all bsp_work_area_initialize() to implement _Memory_Get()
instead.  Move the dirty memory, sbrk(), per-CPU data, workspace, and
malloc() heap initialization into separate system initialization steps.
This makes it also easier to test the individual initialization steps.

This change adds a dependency to _Heap_Extend() to all BSPs.  This
dependency will be removed in a follow up change.

Update #3838.
2020-02-04 06:06:41 +01:00
Sebastian Huber
556e45f24b libtest: Add T_check_task_context() action 2019-12-20 11:06:13 +01:00
Sebastian Huber
77ac1519e8 libtest: Use test configuration in T_now()
Use the user provided now handler of the test configuration to get the
time in T_now().
2019-12-20 11:06:13 +01:00
Sebastian Huber
3cec2dfbc4 config: CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS
Rename CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS into
CONFIGURE_MAXIMUM_FILE_DESCRIPTORS.

Update #3753.
2019-12-19 08:53:03 +01:00
Sebastian Huber
d0b704b09c libtest: Change expected pass state string
Use separator character '_' for all test states.
2019-12-05 07:10:59 +01:00
Sebastian Huber
a6879a418d testsuites: Remove rtems_test_pause*()
The rtems_test_pause() and rtems_test_pause_and_screen_number() macros
had different implementations depending on the RTEMS_TEST_NO_PAUSE
define.  This define was defined to 1 by default.  The user was able to
change this via the undocumented --disable-test-no-pause configure
command line option.

Pausing tests and waiting for user input contradicts the goal of having
automated test runs.  Remove this feature.

Update #3818.
2019-12-04 07:40:32 +01:00
Sebastian Huber
4551f5f0db untar: Properly make parent path
Close #3823.
2019-11-26 08:10:27 +01:00
Sebastian Huber
4a056523cf libtests/dl*: Rename source files
Rename source files to use a %.c -> %.o and %.cc -> %.o pattern.  Use
*.cc for C++ source files instead of *.cpp to be in line with other C++
source files.

Update #3818.
2019-11-26 07:21:44 +01:00
Sebastian Huber
b8b954a3e9 libtests/dl*: Use rtems_tarfs_load()
Use rtems_tarfs_load() instead of Untar_FromMemory() to reduce the
memory demands of the tests.
2019-11-26 07:21:44 +01:00
Sebastian Huber
5c2e7104e7 libtests: Use '-' for TAR file names
Use uniform pattern for all TAR file names.  Use the dl* tests as a
template.

Update #3818.
2019-11-25 13:01:54 +01:00
Sebastian Huber
8f021bdbf9 libtests/dl*: Do not generate files via "echo"
Add the static files to the repository.  This simplifies the build.

Update #3818.
2019-11-25 11:32:19 +01:00
Sebastian Huber
273e8b72c8 libtests/tar0[12]:: Use static archive content
This simplifies the build process.  Do not generate the archive content
through the build system.  Let the version control system deal with
symbolic links.

Update #3818.
2019-11-25 11:32:19 +01:00
Hesham Almatary
1a95dd738f testsuite: Only include termios10/termios11 tests if compiled with POSIX
Both need POSIX support
2019-11-21 10:32:46 +00:00
Sebastian Huber
f377998568 imfs: Add IMFS_make_linfile()
Update #3818.
2019-11-19 16:22:00 +01:00
Sebastian Huber
b882b07e84 Remove BSP_SMALL_MEMORY BSP option
Use the test state configuration instead.

Update #3818.
2019-11-15 07:45:30 +01:00
Hesham Almatary
3a5bc21392 testsuite/dl02: Fix bug to correctly check the handle of the second object file 2019-11-12 10:21:53 +00:00
Hesham Almatary
a4c5da686d riscv: preliminarily support for libdl
Support for targets compiled with -fno-pic and -mno-relax
2019-11-12 10:21:40 +00:00
Sebastian Huber
1a48cbfa16 sptests: Avoid include path magic
Update #3818.
2019-11-12 09:47:20 +01:00
Sebastian Huber
1e343825f4 tests: Simplify fatal error test support
Move system.h to shared init.c.

Update #3818.
2019-11-12 09:47:20 +01:00
Sebastian Huber
6da85f49ea block08: Use local include
Update #3818.
2019-11-12 09:47:17 +01:00
Sebastian Huber
37d509b249 libtests: Remove superfluous include path
Update #3818.
2019-11-12 09:46:26 +01:00
Sebastian Huber
5ba4f38399 libtests: Avoid build system defined defines
Update #3818.
2019-11-12 09:36:20 +01:00
Sebastian Huber
e71f0a5358 ttest01: Check init/final run output
Update #3199.
2019-10-11 08:55:53 +02:00
Mikail Yayla
5a1df5e73e ttest01: Add test outputs all test cases 2019-10-11 08:55:53 +02:00
Sebastian Huber
feb27f9031 ttest01: Add more test cases
Update #3199.
2019-10-11 08:55:49 +02:00
Sebastian Huber
b406d071ec libtest: Do all output in test runner
This ensures that lines are output atomically if they are produced by
different other contexts, e.g. interrupts, other processors, other
threads.

Update #3199.
2019-10-11 08:55:49 +02:00
Sebastian Huber
f88025aebe ttest01: Adjust SPDX-License-Identifier
Update #3199.
2019-10-11 08:55:46 +02:00
Joel Sherrill
667501a314 termios: Add Capability to Generate SIGINTR and SIGQUIT
This patch adds the ability for termios to send SIGINTR on receipt
of VINTR and SIGQUIT for VKILL and return -1/EINTR from read() on
a termios channel. Importantly, this patch does not alter the default
behavior or force POSIX signal code in just because termios is used.
The application must explicitly enable the POSIX behavior of generating
a signal upon receipt of these characters. This is discussed in the
POSIX standard:

   https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap11.html

Closes #3800.
2019-10-08 14:25:41 -05:00
Joel Sherrill
ff4a4a862b termios04/init.c: Remove dead copy of change_iflag() 2019-10-04 09:13:28 -05:00