summaryrefslogtreecommitdiff
path: root/components/dfs/dfs_v2/filesystems
AgeCommit message (Collapse)Author
2026-08-30[style] Align clang-format for procfs and tmpfsbernard
Fix clang-format 22 alignment in loadavg macros, tmpfs setattr mask wrap, and record-lock utest defines so the format CI passes.
2026-08-30[dfs][utest] Add POSIX record-lock coveragebernard
Cover positive/negative l_len, overlapping GETLK conflicts, interrupted F_SETLKW, split/merge, and close/dup2 lock release on tmpfs.
2026-08-30[dfs][procfs] Fix Linux-compatible procfs fieldsbernard
Grow maps without a 256 VMA cap, skip RSS walks for maps, report matching status text, real RSS/statm, MemAvailable after page-pool free pages, load averages plus last PID, cumulative processes, RV32 cpuinfo, and per-character mount escaping.
2026-08-30[dfs][posix] Fix EFAULT, tmpfs setattr, and chmod bitsbernard
NULL read/write buffers now return -EFAULT. tmpfs setattr uses the vnode-backed object after unlink, keeps S_ISUID/S_ISGID/S_ISVTX, and the tmpfs utest checks ENAMETOOLONG plus post-unlink fchmod.
2026-08-30[dfs][procfs] Add Linux-compatible process and system filesbernard
补齐 procfs 中 cpuinfo、stat、uptime、loadavg、meminfo、mounts 和进程目录文件。 按架构和 SMP 配置隔离仅在对应平台有效的字段,避免非 AArch64/非 SMP 构建告警。
2026-08-30[dfs][posix] Add record locks, fchmod, and tmpfs metadatabernard
为 DFS v2 增加 POSIX 记录锁、fchmod,以及 tmpfs 的权限和时间元数据。 进程退出时通过 dfs_fdtable_drop_fd 释放文件描述符和记录锁。
2026-08-17Add AF_UNIX sockets implementation (#11681)Bernard Xiong
* components/dfs: support unix socket nodes AF_UNIX pathname binding and descriptor passing require DFSv2 socket nodes and retained open file descriptions across fd tables. Add socket-node creation for tmpfs and devtmpfs, fd reference helpers, and socket F_SETFL forwarding. Impact: DFSv2 socket nodes and descriptor reference handling. Validation: git diff --cached --check. * components/net/sal: support local protocol providers Local IPC protocol families do not have a backing network device. Store the selected provider in each SAL socket and add a local provider registry while preserving netdev checks for Internet sockets. Handle DFSv2 close semantics, socketpair flags, and MSG_CTRUNC for AF_UNIX integration. Impact: SAL protocol dispatch for all socket families. Validation: git diff --cached --check. * components/lwp: support unix socket messages Musl AF_UNIX addresses and ancillary data require explicit ABI and user-memory conversion at the LWP syscall boundary. Add the musl msghdr layout, bounded address and message copying, control-message level conversion, and MSG_CTRUNC translation. Correct receive buffer allocation and copy lengths while handling messages. Impact: LWP socket syscalls when SAL is enabled. Validation: git diff --cached --check. * components/net/af_unix: add local sockets Add an opt-in AF_UNIX provider for pathname-based local IPC without a synthetic network device. Support datagram and stream sockets, blocking and nonblocking I/O, timeouts, poll, socketpair, and SCM_RIGHTS descriptor passing. Include bounded Kconfig settings, component documentation, and utest coverage. Impact: enabled only by RT_USING_AF_UNIX and requires SAL POSIX with DFSv2. Validation: git diff --cached --check. * Fix AF_UNIX CI checks Apply the repository clang-format rules to the affected source lines. Suppress the cppcheck false positive for the devtmpfs list iterator. No functional behavior is changed. * components/lwp: preserve NULL optional msghdr buffers When msg_name or msg_control is NULL, keep the kernel pointer NULL instead of substituting an uninitialized buffer. Reject a NULL control buffer with a nonzero length as EFAULT. Impact: LWP sendmsg/recvmsg conversion on MMU targets. Validation: git diff --cached --check. * components/net/af_unix: fix poll UAF, namespace leak, and SCM_RIGHTS cycles Poll only the local wait queue and wake writers from the receiver. Free namespace entries on detach, and reject AF_UNIX descriptors in SCM_RIGHTS until cycle collection exists. Impact: AF_UNIX poll, bind lifetime, and descriptor passing. Validation: git diff --cached --check. * components/dfs: add DFSv2 AF_UNIX utest suite Add opt-in tests under dfs/utest/v2/af_unix for socket nodes, IPC, poll peer-close, namespace cleanup, and SCM_RIGHTS rejection. Sources are built only when RT_UTEST_TC_USING_DFS_V2_AF_UNIX and the selected test groups are enabled. Impact: DFS utest menu and build; no production AF_UNIX behavior change. Validation: git diff --cached --check.
2026-08-06[fix][dfs] ↵angryproton
增加文件系统操作的类型检查,防止类型不匹配导致数据结构不一致引发的异常
2026-07-31components/dfs: unify vnode lock namesBernard Xiong
2026-07-23[fix][dfs] 修正 elmfat mkfs 中 f_mount 的错误传参angryproton
2026-07-20[fix][tmpfs]修正 getdents 中文件类型错误的判断变量angryproton
2026-07-15[fix][dfs] elmfat磁盘操作设备指针判空angryproton
2026-07-13[chg][dfs]Clean up comments in dfs_elm_free_vnode与非熊
Removed unnecessary comments from dfs_elm_free_vnode function.
2026-07-13[fix][dfs_elm] 修复关闭目录和释放vnode时的资源泄露angryproton
2026-07-13[fix][dfs] 修复elmfat挂载失败时的内存泄漏angryproton
2026-06-22[fix][elm]解决块设备扇区大小校验失败时存在的disk泄漏问题与非熊
2026-06-12utest: move tmpfs testcases to components/dfsCYFS
Signed-off-by: CYFS <[email protected]>
2026-05-04[dfs][elmfat] Update elm-fatfs to R0.16wdfk-prog
2026-05-04dfs/romfs: validate ioctl args for RT_FIOGETADDRAphlita
2025-12-27[FIX][DFSv2][ELMFAT]解决dfs_elm_unlink在FF_VOLUMES为1时赋值drivers_fn ↵angryproton
引用未定义变量导致编译报错的问题
2025-12-26[FIX][DFSv2][ELMFAT]修复多线程环境下lseek返回值概率性被篡改 ↵angryproton
的问题
2025-12-26[FIX]Update vnode size after writing to tmpfsAngryProton
2025-10-28[components]:utilize the clang-format-ignore mechanism (#10860)CYFS
2025-05-20[dfs] enable procfs and tempfs in default when using smart; fix LWIP_ROUTE ↵Bernard Xiong
warning issue.
2025-03-11fix dangling pointer in component pthread and dfs_elm (#9976)lingfengPeng
* [components/libc/posix][pthreads]fix the risk of dangling pointer * [components][dfs][dfs_elm]:fix risk of dangling pointer, unmount the temp driver then free the temp FATFS in dfs_elm_mkfs.
2025-03-02[components][dfs_v2]: Fix cromfs bug (#10054)wycwyhwyq
2025-01-14[components][fs]sync procfs (#9206)zms123456
* add procfs * fix ref count check error
2025-01-14[components][dfs]separate dfs fs data structure ops (#9205)zms123456
separate dfs fs data structure ops
2025-01-09[components][dfs_v2]: Fix dfs_devfs_open memory leakwycwyhwyq
2025-01-03[romfs/dfs_romfs.c] _rom_fops add ioctlyuqingli
2024-11-13feat: devfs: handling unit size in POSIX RW requestShell
POSIX.1 says: > read() attempts to read up to count bytes from file descriptor fd > into the buffer starting at buf. On the other hand, for rt_device_read, the `@size` is defined as the number of unit (block size for blk device, otherwise one byte). Changes: - Transferred unit size from POSIX R/W(in bytes) to rt_device_R/W during request of file R/W operations. Signed-off-by: Shell <[email protected]>
2024-09-15fixup: dfs_v2: Correct device mode permissions in devfsShell
The mode permissions for character, block, and pipe devices were previously set to 0777, which is overly permissive and not in line with standard practice. This change reduces the permissions to 0666, restricting execute permissions while still allowing read/write access. Changes: - Adjusted permissions for character/block/pipe devices from 0777 to 0666. Signed-off-by: Shell <[email protected]>
2024-09-01fixup: ptyfs: CI reported snprintf type issuesShell
2024-08-24fix_return_errzhujiale
2024-07-29bsp: cvitek/c906B: feat: add config of bootfsShell
To support more choice on bootfs. romfs, cromfs are now supported on risc_v_big platform. Changes: - added mount operations under port - added prototypes for cromfs init APIs Signed-off-by: Shell <[email protected]> Reviewed-on: https://github.com/RT-Thread/rt-thread/pull/9229 Reviewed-by: Chen Wang <[email protected]>
2024-07-17[fix] fix cromfs read out of mem range (#9197)zhuzhuzhu
Update dfs_cromfs.c
2024-06-13[fix]fix tmpfs bug (#8970)zhuzhuzhu
* first * second * thrid * Update SConscript * tmpfs testcase default n * Update dfs_tmpfs.c * format document --------- Co-authored-by: zhujiale <[email protected]>
2024-05-21[dfsv2] fixup out-of-memory access (#8973)Shell
This change addresses a potential out-of-memory access issue in the devfs filesystem component. The issue arises when the `rt_malloc` function allocates memory for a path string without accounting for the null terminator, leading to undefined behavior. As the manual documented: > DESCRIPTION > The strlen() function calculates the length of the string pointed to > by s, excluding the terminating null byte ('\0'). To fix this, the memory allocation size was increased by one byte to ensure space for the null terminator. This prevents potential out-of-memory access and ensures proper string termination. Signed-off-by: Shell <[email protected]>
2024-04-25[components][dfs]remove duplicate lseek in devfs (#8859)zms123456
remove duplicate lseek in devfs
2024-04-21[clang-format] ↵latercomer
增加clang-format格式化配置,通过ide或者手动运行tools/run-clang-format.py进行代码自动格式化
2024-03-28sync smart & dfs (#8672)Shell
Signed-off-by: xqyjlj <[email protected]> Signed-off-by: Shell <[email protected]> Co-authored-by: xqyjlj <[email protected]>
2024-03-25fixup d1s (#8671)Shell
Signed-off-by: Shell <[email protected]>
2024-02-23🎯 Sync smart & scheduler codes (#8537)Shell
Signed-off-by: Shell <[email protected]> Co-authored-by: xqyjlj <[email protected]>
2023-12-26[ci][stm32f407] add attach config CI checkMeco Man
2023-12-12sync update dfs v2. (#8336)geniusgogo
2023-11-28fix dfs path name overflow. (#8305)geniusgogo
2023-11-23fix dfsv2 romfs dfs_romfs_getdents buffer overflow.geniusgogo
2023-11-02✨ feat(dfs_v2/cromfs): add cromfs mmap (#8218)xqyjlj
2023-10-30[dfs][mqueue]Ensure that dev is initialized before mqueue (#8197)kk
2023-10-26update elmfat from r14b to r15 (#8179)xiao-mang