1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

39 Commits

Author SHA1 Message Date
Benjamin Valentin
3b587d9268 sys/vfs: add force option to vfs_umount() 2023-02-28 17:24:03 +01:00
Benjamin Valentin
e798d21b3b pkg/lwext4: add lwEXT4 2023-02-25 14:01:20 +01:00
Benjamin Valentin
49e1720d5c vfs: allow filesystem to request absolute paths 2022-10-02 00:16:01 +02:00
Benjamin Valentin
85dd564f87 vfs: drop unused abs_path parameter 2022-09-29 22:01:37 +02:00
Benjamin Valentin
855a359058 vfs: introduce vfs_format_by_path() 2022-08-12 15:36:29 +02:00
Benjamin Valentin
de91fc4b3a sys/vfs: FATFS_VFS_FILE_BUFFER_SIZE depends on VFS_NAME_MAX
e.g. try CFLAGS += -DVFS_NAME_MAX=39
2022-06-21 18:02:54 +02:00
benpicco
cabb0b7398
Merge pull request #18109 from benpicco/vfs_unmount_by_path
sys/vfs: add vfs_unmount_by_path()
2022-05-17 20:25:18 +02:00
benpicco
1c97eea8b9
Merge pull request #18038 from benpicco/vfs_util
sys/vfs_util: add VFS helper functions
2022-05-17 02:17:38 +02:00
chrysn
ee346fe628 sys/vfs: Point user to simplified functions 2022-05-16 13:52:29 +02:00
Benjamin Valentin
ff4c738e2d sys/vfs: add vfs_unmount_by_path() 2022-05-16 11:11:11 +02:00
Benjamin Valentin
42e5d0d402 sys/vfs: add vfs_write_iol() 2022-05-02 23:23:52 +02:00
Benjamin Valentin
805bfc754a pkg/fatfs: enable exFAT support
Enabling exFAT requires enabling long file names, so enable LFN if
exFAT is enabled.
exFAT (and LFN) also requires bumping the per-file/per-dir buffer.

Can be tested with

    CFLAGS += -DFATFS_FFCONF_OPT_FS_EXFAT=1
2022-03-11 13:21:46 +01:00
Benjamin Valentin
8322110f84 pkg/fatfs: support FF_USE_FASTSEEK=1 2022-02-22 15:03:55 +01:00
Benjamin Valentin
635016baf9 pkg/fatfs: support FF_FS_TINY=0
For increased performance it can be desireable to disable the tiny option.
The config option enables a per-file cache which increases the size
of `fatfs_file_desc_t`.
2022-02-22 15:03:55 +01:00
chrysn
40f7c66625
Merge pull request #17660 from chrysn-pull-requests/vfs-drop-per-fs-fstatvfs
vfs: Introduce reliable disk enumeration
2022-02-17 18:47:41 +01:00
chrysn
d60f7aee72 sys/vfs: Deprecate public use of vfs_iterate_mounts 2022-02-16 19:15:02 +01:00
chrysn
b9b0ca8972 sys/shell/vfs: Use vfs_iter_mount_dirs instead of vfs_iter_mounts
This solves highly theoretical race conditions of file systems being
unmounted in an application while a shell `df` runs, fixes the previous
weird behavior that `/mountpoint/non-existant-path` could be df'd and
would even report that non-existant path as a file name, but more
practically ensures that an example of vfs_iter_mount_dirs is around.
2022-02-16 19:15:02 +01:00
chrysn
f0e80ee10c tests: Cover vfs_iterate_mount_dirs in a new test
... adding precision to the documentation where a corner case was
discovered during testing and is permitted.

The test is too large for one small board, just like the other existing
VFS test.
2022-02-16 19:15:02 +01:00
chrysn
90069197f7 sys/vfs: Introduce vfs_iterate_mount_dirs
... as thread-safe replacement for vfs_iterate_mounts
2022-02-16 19:15:02 +01:00
Benjamin Valentin
54d5f43aff sys/vfs: add vfs_mount_by_path() 2022-02-16 18:55:26 +01:00
chrysn
599eade495 sys/vfs: Add vfs_dstatvfs 2022-02-15 14:58:01 +01:00
chrysn
ff1f81aac8 sys/vfs: Drop per-filesystem fstatvfs
No current file system implements it, there is no defined semantic
difference between running fstatfs and the fallback currently
implemented, and there is practically no optimization gained from not
just running it through a single statvfs.
2022-02-15 14:58:01 +01:00
chrysn
4c54bd8bdb vfs: Document that open directories are counted
The addition is helpful because directories are visibly different from
open files (and generally are not treated like files).
2022-02-15 11:17:02 +01:00
benpicco
be45400631
Merge pull request #17341 from benpicco/vfs-mtd_cleanup
sys/vfs: add file-system auto-mount
2022-02-09 21:50:34 +01:00
Benjamin Valentin
2f6aa71946 sys/vfs: add file-system auto-mount 2022-02-09 12:21:53 +01:00
Benjamin Valentin
aac538ba7f sys/vfs: provide vfs_fsync() 2022-02-07 16:07:20 +01:00
Benjamin Valentin
70d9f2fb1a sys/vfs: move mtd_vfs_ops to vfs.h
This avoids a cyclic include of mtd.h
2022-01-24 13:53:21 +01:00
3a643246c8 sys/vfs: adapt to changed thread define location 2020-11-23 16:56:34 +01:00
chrysn
b6392d63ef vfs: Provide generic stat implementation (and use in fatfs)
When a file system has `fstat` and `open` implemented, `stat` can still
be missing. The new function is a generic implementation, and used in
fatfs to provide a `stat`.
2020-10-25 17:39:57 +01:00
Leandro Lanzieri
192737948d
Merge pull request #12975 from miri64/posix/feat/select
posix: initial import of select() function (only support sockets for now)
2020-07-02 09:37:55 +02:00
Martine S. Lenders
ef844d8863
vfs: provide function to get internal file information by fd 2020-07-01 13:36:25 +02:00
Benjamin Valentin
adbf9ef3ac vfs: select VFS params to accommodate all enabled file systems 2020-06-17 16:00:24 +02:00
JulianHolzwarth
8ef9f0fc6e sys/include/vfs.h: use c11_atomics_compat.hpp header wrapper
to solve a problem with c and c++ atomic
2020-05-04 17:56:09 +02:00
Hauke Petersen
b837e656f9 stdio/vfs: generalized VFS mapping for STDIO 2018-08-30 11:14:59 +02:00
Vincent Dupont
2eca6d25fd vfs: add format function in vfs api 2018-02-09 14:29:45 +01:00
MichelRottleuthner
ee17dae5af pkg/fatfs: add vfs integration 2018-01-09 14:46:40 +01:00
0fcc7d3834 cleanup: apply headerguard script output 2017-05-24 17:54:02 +02:00
Vincent Dupont
e56c4f3553 vfs: fix readdir return value documentation 2017-04-03 10:42:43 +02:00
Joakim Nohlgård
dcc37329df sys/vfs: A virtual file system (VFS) layer for RIOT
The VFS layer provides file system abstractions to allow using a unified
interface to access files from mounted file systems.
2017-03-07 17:59:57 +01:00