Commit Graph

5195 Commits

Author SHA1 Message Date
Sebastian Huber
7d5c08db80 validation: Check bootloader L2C settings
Update #4925.
2024-11-20 15:08:04 +00:00
Sebastian Huber
7ff3438cba validation: Test thread priority change detail
Test the proper serialization of explicit thread priority changes (for
example rtems_task_set_priority()) and thread priority changes carried
out by thread queues (locking protocols such as priority inheritance).

With RTEMS_DEBUG enabled, the new test case fails with an assertion.  It
is fixed in a follow up commit.

Update #5159.
2024-11-20 02:32:38 +01:00
Sebastian Huber
04f263ee82 validation: Add ticket lock helpers
Update #5159.
2024-11-20 02:32:11 +01:00
Sebastian Huber
83dccef48d libtests/ttest01: Fix CPU counter precision issues
Change the time to convert so that rounding issues do not propergate to
the second next digit.  Properly round the result used for the precision
estimate.
2024-11-14 03:45:46 +01:00
Sebastian Huber
f7b04e72f8 validation: Clarify SMP EDF test case
Update #3716.
2024-11-14 01:33:24 +01:00
Sebastian Huber
5ed0bf3457 spfatal34/spfatal36: Avoid RTEMS_UNREACHABLE()
The RTEMS_UNREACHABLE() is a hint to the compiler that this code
location is unreachable.  The compiler may use this information to
optimize the code.  If a test case fails and we reach this code
location, then unpredictable things may happen making the test case
debugging more difficult than necessary.
2024-11-13 23:05:25 +00:00
Sebastian Huber
85facac39f spfatal26: Fix recursive test end 2024-11-13 23:05:25 +00:00
Sebastian Huber
0f2721c832 record: Dump only once in fatal handling 2024-11-12 22:43:35 +00:00
Sebastian Huber
920f8d8897 record: Rework client
The ring buffer overflow handling is already performed by
rtems_record_fetch().
2024-11-12 22:43:35 +00:00
Sebastian Huber
be764f7dec record: Remove rtems_record_drain()
The rtems_record_drain() function is unreliable.  Replace it with
rtems_record_fetch().
2024-11-12 22:43:35 +00:00
Sebastian Huber
049b9b5c82 record: Add rtems_record_fetch()
This function will replace rtems_record_drain() which turned out to be
unreliable in SMP configurations.
2024-11-12 22:43:35 +00:00
Sebastian Huber
3721dea3d0 record02: Fix test end
Include _Record_Fatal_dump_base64_zlib() in the test scope.
2024-11-12 22:43:35 +00:00
Sebastian Huber
3f7fdcc711 shell01: Fix test failure
Test failure was introduced by commit:

commit c4f9759068
Author: shuhua hua <huangshuhua@kylinos.cn>
Date:   Thu Sep 12 02:36:13 2024 +0000

    libtests/shell01:add test empty and NULL usernames check
2024-11-12 16:25:05 +00:00
Sebastian Huber
9fabe95dc6 fstests: Fix name of JFFS2 NAND tests 2024-11-12 16:23:03 +00:00
Aaron Nyholm
87c725b6ed flashdev: Add sector IOCTLs
Added new IOCTLs to flashdev to get sector info.
Updated flashdev shell command and flashdev test with new IOCTLs.
2024-11-06 22:35:20 +00:00
yang.zhang
64fe53a855 libfs/pipe: Fix panic caused by incomplete pipe dup
When dup fd, should also clone fctnl flags.
Also should check NULL param in pipe_* funcs.

Signed-off-by: yang.zhang <zhangyang01@kylinos.cn>
2024-10-30 20:03:58 +00:00
Amar Takhar
e0f1c8fe0b Set Python scripts to use Python 3
Several of these already required Python 3 and would not run under 2.7.
2024-10-24 23:26:05 +00:00
Sebastian Huber
4c75bd88f3 Revert "libmisc/stackchk: Change stack checker reporter function signatures"
This reverts commit c1aa06dbd2.

Extending the rtems_stack_checker_info like this breaks the existing
visitor API used by rtems_stack_checker_iterate().  After review, using
an information structure contradicts the intention of the reporter to
allow a minimal reporting.  Filling up the information structure with
all the details would pull in several dependencies, like
_Thread_Get_name().  The API should be improved to provide the user with
the necessary information from the TCB without having to access members
directly.
2024-10-19 15:43:07 +00:00
Mohamed Hassan
c1aa06dbd2 libmisc/stackchk: Change stack checker reporter function signatures
This helps in abstraction by encapsulating unnecessary data to be revealed to the user
2024-10-16 04:30:45 +00:00
shuhua hua
c4f9759068 libtests/shell01:add test empty and NULL usernames check 2024-10-15 13:12:25 +00:00
Kinsey Moore
9eb23924e8 testsuites/sptree01: Fix missing prototype warning 2024-09-25 11:55:40 +00:00
Kinsey Moore
81930e2638 testsuites: Add dl13 test for Thumb to ARM transitions 2024-09-24 20:57:56 -05:00
Sebastian Huber
c311068a9e smpfatal08: Fix build for aarch64
Update #5064.
2024-09-20 06:17:09 +02:00
Sebastian Huber
2aa921c3be validation: Fix synchronization issue 2024-09-19 04:35:20 +02:00
Sebastian Huber
1119981e7c tests: Enable ISR in fatal extensions
Fix code locations left over by commit
3332e54772.

Update #5067.
2024-09-19 04:34:38 +02:00
alessandronardin
d670dafaa4 posix/lio_listio.c: corrected return when RTEMS_POSIX_API is undefined
Modified the body of lio_listio(), to make sure it return -1 and sets
errno to ENOSYS, when RTEMS_POSIX_API is not defined.

The psxenosys test has been modified to test for lio_listio() only
when RTEMS_POSIX_API is not defined. In the test all the puts() have
been removed. If kept they would have made the output of the test depending
on the build configuration, making the content of psxenosys.scn inconsistent.
Removing the puts() makes the .scn file valid regardless of the build
configuration.

Additionally, rtems_aio_notify() in aio_misc.c has been modified,
simplifying it and reducing the part inside the ifdef.

Closes #5125
2024-09-10 08:41:53 +02:00
Joel Sherrill
f075fa55cd spmsgq_err[12]: Add message sizes to configuration
The test had hard-coded numbers for maximum messages and message sizes.
As a result, it did not configure the memory required for message
storage.
2024-09-09 18:49:49 -05:00
alessandronardin
1b6684ee2b cpukit/posix/aio*: Added support for lio_listio()
This commit adds support for lio_listio().
psxaio05 has been added to test the new method.
To avoid code duplication, the body of aio_read and aio_write has been
moved in two helper methods. In this way i can use it also in lio_listio().

In addition to that, a limit on the number of total aio operation enqueued
has been added.

Updates rtems/programs/gsoc#29
2024-09-02 18:16:30 +02:00
Amar Takhar
07728e0913 Rename COPYING to LICENSE.md
This follows current conventions.

Two have been left behind for now until we decide what to do as they are
imports.

  * cpukit/compression/xz/COPYING
  * cpukit/libmisc/uuid/COPYING
2024-08-23 20:58:25 +00:00
Sebastian Huber
3332e54772 score: Disable ISR for fatal extensions
Update #5067.
2024-08-23 14:54:37 +00:00
Sebastian Huber
e80883b406 score: Simplify _Terminate()
In _Terminate(), everything after invoking the fatal extensions is essentially
dead code.  Simplify this code block and provide a reasonable safe fall-back
for badly configured applications.  Just disable masked interrupts and execute
an idle loop.

Update #5067.
2024-08-23 14:54:37 +00:00
Mohamed Hassan
6ab27bb54e libtests/stackchk04: Add a new testsuite for the detailed reporter
Now as the default reporter is set to be a quiet reporter, we have stackchk test case for the default quiet reporter, stackchk03 for a custom user-defined reporter and stackchk04 for the detailed reporter function
2024-08-06 22:40:12 +03:00
Amar Takhar
cfdd40935d testsuites/benchmarks/dhrystone: Convert documents to single README.md 2024-08-02 21:19:11 +00:00
Loris Nardo
bd7e02d96b testsuites: Fix fstests/fsrmdirparent testcase
The testcase failed because the rmdir call in that case had two possibilities to fail and the implementation of rmdir checked the other possibility first.

Closes #5071
2024-08-02 20:58:33 +00:00
Amar Takhar
4c3d505811 testsuites: Convert */README to MarkDown 2024-08-02 20:43:00 +00:00
Amar Takhar
e8e099d5f8 testsuites: Convert README to MarkDown
This also merges PROBLEMS and README.testdata into a single README so it
displays nicely in the parent directory.
2024-08-02 20:39:13 +00:00
alessandronardin
adce380138 cpukit/posix/aio*: added support for O_DSYNC
The aio_fsync function now supports the value O_DSYNC for op.
Tests are added to improve coverage and test new features.

Closes #5040.
2024-08-02 20:02:58 +00:00
Mohamed Hassan
dc123bb828 libmisc/stackchk: Add configurability to the stack checker reporting function 2024-08-02 20:00:20 +00:00
Joel Sherrill
30ae3ef9da Revert "objectgetinfo.c: Add test case for API field too high"
This reverts commit 807070a696
2024-07-30 20:33:18 +00:00
Joel Sherrill
807070a696 objectgetinfo.c: Add test case for API field too high
This was spotted by Coverity as CID 1592935.

Closes #5076.
2024-07-27 10:29:05 -05:00
Amar Takhar
0bd9737e58 Move old devel links to GitLab 2024-07-26 21:37:42 +00:00
Amar Takhar
5c5ccbcc57 Remove errant URL.
Not sure what this is doing here found it during !134  Since there is nowhere to
point it to remove it.
2024-07-26 19:54:02 +00:00
Loris Nardo
07bd3871ab testsuites: Allow finer control on the fstest result
Changed fstest support to allow control on the test result of each fstest, updated all fstest accordingly.
Modified FS_FAIL macro to fail hard and not just print a message which rtems-test runner ignores.
Split failing test cases from the ones that passes; added fsrenameexisting, fsrenamepermexisting, fsrmdirparent, fsrenamelongname and fsrenamemaxlinks test cases.

Marked fsrenameexisting, fsrenamepermexisting as expected to fail due to #2169.
Marked fsrmdirparent as expected to fail, covered by #5071.
Marked fssymlink as expected to fail due to rename problems partially covered by #2169.
Marked rfsfsrenamelongname as expected to fail, covered by #5069.
Marked *fsrenamemaxlinks as expected to fail, covered by #5070.
Marked jffs2fsrenamelongname and jffs2nandfsrenamelongname as expected to fail, as JFFS2 seems to not have a limit on the file name, covered by #5073
2024-07-25 22:09:17 +02:00
Loris Nardo
d7d1bec401 testsuites: Move some testcases of fsrename into fspermission and fssymlink so that fsrename can be used also for FAT filesystem 2024-07-25 18:22:46 +00:00
Loris Nardo
a558c96c64 msdos: update inode during rename
rename now actively changes the inode of the file being renamed.
This change has been done to fix an issue when the file being renamed is already opened before the rename, in particular failing to update the inode number (and the two lookup tables) could cause at least two problems:
1) A new file created in the same source folder of the file being renamed may get the same fat file descriptor of the renamed file
2) An open to the renamed file opens a new fat file descriptor, thus putting out of sync the operations on the file (two distinct fat file descriptor working on the same clusters and entries)

Previously the inode was in any case changed once the file was closed.

Another possible solution would have been to separate the inode number from the lookup table, but this solution would have required much more memory because it needed to keep track of all files seen in the file system up to the last operation and not only the opened ones.

Closes #5044
2024-07-25 18:22:46 +00:00
alessandronardin
3b96aaddde posix/aio*: Added notification on request completion
The patch adds the generation of a notification after an Asynchronous I/O
request has been completed. The notification is generated using the aio_sigevent
filed in the aiocb struct, as defined by the posix specifiations.
A new control, ensuring the validity of the field, is added on each call to
aio_read(), aio_write() and aio_fsync().
The patch also adds tests to cover the new code, and fixes formatting errors of
various aio files.
2024-07-24 11:05:21 +02:00
Chris Johns
e58ff8984c libcsupport/libio: Add rtems_libio_count_open_iops to return open descriptors
Close #5063
2024-07-24 03:23:06 +00:00
Sebastian Huber
a824ed6f7f smptests/smpipi01: Fix more sporadic test failures
The last fix in commit 70029fc7be did not work on
targets where you can have active and pending interrupts.
2024-07-19 12:52:58 +00:00
Chris Johns
cc034e7d2f libcsupport/getrusage: Return task and idle time using getrusage
Close #5062
2024-07-18 00:11:09 +00:00
Gedare Bloom
be8aa9b09d sptests/sptree01: add more detail to sptree01.doc 2024-07-09 22:52:40 +00:00