Commit Graph
206 Commits
Author SHA1 Message Date
Sebastian Huber bcef89f236 Update company name
The embedded brains GmbH & Co. KG is the legal successor of embedded
brains GmbH.
2023-05-20 11:05:26 +02:00
Kinsey Moore 5db68a5859 cpukit/jffs2: Add support for NAND under JFFS2
This adds write buffer and bad block support required for JFFS2
operation on NAND devices. This also adds the minor modifications
necessary for RTEMS support in the Linux header stubs and in wbuf.c.
Memory and NOR backed applications should experience no difference in
operation since they do not expose the callbacks required for write
buffer support.
2023-03-15 13:29:12 -05:00
Sebastian Huber 9bb2f59efe doxygen: Add groups for related test suites 2023-03-14 08:07:25 +01:00
Chris Johns c36d608079 testsuite: Fix warnings
Updates #4662
2022-08-05 07:54:13 +10:00
Sebastian Huber 085f3637aa TFTPFS: Fix test configuration for FP targets
The test uses snprintf().

Update #4666.
2022-06-21 16:11:37 +02:00
Sebastian Huber e38d4f79fa TFTPFS: Reduce test configuration
Update #4666.
2022-06-21 16:11:37 +02:00
Frank Kühndel 3e2b4ec857 TFTPFS: Add tests
Update #4666.
2022-06-21 09:32:16 +02:00
Joel Sherrill e8878d4815 fstests/fsdosfsname01/create_image.sh: Manually change license to BSD-2
Updates #3053.
2022-04-12 13:35:39 -05:00
Joel Sherrill 6d410fe86b testsuites/fstests/*: Change license to BSD-2
Updates #3053.
2022-04-12 13:35:39 -05:00
Joel Sherrill e2ffe959c5 testsuites/fstests/*: Change license to BSD-2
Updates #3053.
2022-04-07 08:38:56 -05:00
Joel Sherrill bbe71c611b bsps/testsuites/: Scripted embedded brains header file clean up
Updates #4625.
2022-03-10 08:43:50 +01:00
Joel Sherrill da7204301a testsuites/fstests/fsdosfsname01/create_files.cs: Convert to UNIX CR/LF.
This file had a mix of both DOS and UNIX CR/LF.

Updates #4625.
2022-03-10 08:43:49 +01:00
Alex White 772ffc0704 testsuites/fstests: Fix uninitialized utimbuf structs
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.
2021-10-04 17:18:13 -05:00
Sebastian Huber db8f598d56 build: Remove old build system
Close #3250.
Close #4081.
2021-09-21 07:39:09 +02:00
Joel Sherrill dbe355bfe7 fsnofs01/init.c: Check for ENOENT from utime().
The addition of the entire *utime*() family of functions resulted
in this call returning ENOENT not ENXIO. This is better aligned
with the POSIX definition of the methods.
2021-06-08 13:14:53 -05:00
Christian Mauderer 6ae79e6df6 libblock: Add rtems_bdbuf_peek()
Adds a peek function that allows (for example) a file system to suggest
the next blocks that should be used for read ahead. This can increase
the read speed of fragmented files.

Update #3689
2021-03-26 14:25:38 +01:00
Frank Kühndel 0a761a58c9 fsdosfsname01: Fix string truncation warning
This patch fixes a compiler warning:

../../../testsuites/fstests/fsdosfsname01/init.c:430:19: warning:
'%s' directive output may be truncated writing up to 6424 bytes into
a region of size 257 [-Wformat-truncation=]

The buffer 'dirname' is exactly large enough so that no truncation
can ever occur. Using the return value of snprintf() is an official
supported way to suppress the warning.

I considered the comment of Joel Sherrill about not replacing snprintf():
https://lists.rtems.org/pipermail/devel/2020-September/062113.html
2020-10-15 19:12:15 +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
Sebastian Huber c2287ba2cf libio: Robust file descriptor reference counting
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-13 09:57:04 +01:00
Sebastian Huber fa44c3903a imfs: Add IMFS_add_node()
Update #3894.
2020-03-04 09:30:03 +01:00
Sebastian Huber c4d5a341bd fstests/fsrename: Rename a file twice 2020-03-03 11:35:11 +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 1cd283a723 fstests/fsstatvfs: Include missing header file 2020-02-04 06:24:33 +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 b88c7583b8 fstests: Use tmacros.h instead of pmacros.h
This avoids an extra include path.

Update #3818.
2019-11-12 09:36:21 +01:00
Sebastian Huber 03fcbb15d2 fs: Add struct dirent::d_type support 2019-02-05 10:17:04 +01:00
Sebastian Huber b015c01443 build: Do not install test programs 2019-01-30 09:46:35 +01:00
Sebastian Huber 9c12bcfdc5 Fix format warnings 2019-01-07 09:49:16 +01:00
Sebastian Huber 06331e4dcb dosfs: Fix device identifier
Update #3358.
2018-11-27 12:46:17 +01:00
Sebastian Huber 47b32a01a4 fsclose01: Fix uninitialized variable warning 2018-10-12 14:45:24 +02:00
Sebastian Huber 477bca2d61 build: Remove local.am 2018-10-10 07:57:47 +02:00
Sebastian Huber 9da5d5fd10 build: Directly reference libraries in tests
Remove use of TMPINSTALL_FILES.
2018-10-10 07:57:42 +02:00
Joel Sherrill adbd7e747e fsdosfssync01/init.c: Remove unused variable 2018-08-15 09:47:53 -05:00
Sebastian Huber dd66fda397 tests: Avoid deprecated rtems_disk_io_initialize()
Update #3358.
2018-08-07 07:17:18 +02:00
Sebastian Huber 24b94c4771 ramdisk: Use rtems_blkdev_create()
Update #3358.
2018-08-07 07:17:16 +02:00
Sebastian Huber ea092ccc79 tools: Remove rtems-bin2c
This tool is now included in the RTEMS tools repository.

Close #3380.
2018-06-14 07:33:46 +02:00
Sebastian Huber b422aa3f4a tests: Remove configure feature checks
Update #3409.
2018-05-02 07:11:03 +02:00
Joel Sherrill c77cd426f8 Drop executable permissions on .[ch] files 2018-04-30 17:18:49 -05:00
Chris Johns aa567bc1cc configure: Add subdir-objects to all automake flags.
This option silences warning with automake-1.16.1 allowing us to
upgrade to that version.

This change has been tested with automake-1.12.6 and automake-1.16.1.
It seems version 1.16.1 configures slower than 1.12.6 for the same
source and BSP. The newer versions is 6 second slower.

Close #3387.
2018-04-11 11:52:29 +10:00
Chris Johns 9e8df1fe2f fstest/fsrfsbitmap01: Update RFS bitmap tests to test fixes.
Add tests to check the patches for this ticket exist and are fixed.

Close #3089
2018-04-11 11:51:57 +10:00
Chris Johns 8967e5fa78 testsuite/fstests: Merged nested Makefile.am files into one Makefile.am
This change is part of the testsuite Makefile.am reorganization.

Update #3382
2018-04-10 08:24:54 +10:00
Sebastian Huber 2d0bc839ed build: Remove EXTRA_DIST
A "make dist" is not supported. So, it makes no sense to have pure "make
dist" related stuff in the Makefile.am.
2018-04-04 10:09:04 +02:00
Sebastian Huber a3eec5cf35 fsclose01: Fix task mode, use attribute
Update #1971.
2018-02-09 13:17:45 +01:00
Sebastian Huber 48aa4b5d50 fsclose01: Use floating-point task
The tmpfile() uses sprintf().

Update #1971.
2018-02-09 13:14:52 +01:00
Sebastian Huber 4ac5ffbb83 fsclose01: Add tmpfile() test case
Close #1971.
2018-02-05 09:31:32 +01:00
Chris Johns 2afb22b7e1 Remove make preinstall
A speciality of the RTEMS build system was the make preinstall step.  It
copied header files from arbitrary locations into the build tree.  The
header files were included via the -Bsome/build/tree/path GCC command
line option.

This has at least seven problems:

* The make preinstall step itself needs time and disk space.

* Errors in header files show up in the build tree copy.  This makes it
  hard for editors to open the right file to fix the error.

* There is no clear relationship between source and build tree header
  files.  This makes an audit of the build process difficult.

* The visibility of all header files in the build tree makes it
  difficult to enforce API barriers.  For example it is discouraged to
  use BSP-specifics in the cpukit.

* An introduction of a new build system is difficult.

* Include paths specified by the -B option are system headers.  This
  may suppress warnings.

* The parallel build had sporadic failures on some hosts.

This patch removes the make preinstall step.   All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc.  Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.

The new cpukit include directories are:

* cpukit/include

* cpukit/score/cpu/@RTEMS_CPU@/include

* cpukit/libnetworking

The new BSP include directories are:

* bsps/include

* bsps/@RTEMS_CPU@/include

* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include

There are build tree include directories for generated files.

The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.

The "bootstrap -p" option was removed.  The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.

Update #3254.
2018-01-25 08:45:26 +01:00
Sebastian Huber 5b7f922710 fstests: Use floating-point task
The fstests use snprintf().
2018-01-19 10:49:27 +01:00
Sebastian Huber 9c270ac663 fstests: Use floating-point task
The fstests use snprintf().
2018-01-19 09:47:39 +01:00
Christian Mauderer 2fe368787e dosfs: Allow creating a file with similar name.
If there is already a file with a long file name it isn't possible to
create a second file which has a name that ends on the first files name
(for example ets.beam and sets.beam). This patch fixes that.

Update #3258.
2017-12-07 07:30:16 +01:00
Christian Mauderer ca835e5683 dosfs: Fix files with same name as volume name.
Take care that a file in the root directory with the same name as the
volume name can be found.

Update #3257.
2017-12-05 08:00:34 +01:00