Skip to content

Conversation

@fslongjin
Copy link
Member

No description provided.

- 新增FUSE权限控制机制,支持allow_other和default_permissions挂载选项
- 实现FUSE_DEV_IOC_CLONE设备克隆功能,支持多线程FUSE守护进程
- 添加FUSE_STATFS协议支持,完善文件系统统计信息
- 重构VFS权限检查,支持基于文件系统的权限策略(DAC/Remote)
- 新增用户态测试程序,验证权限控制、设备克隆和统计功能
- 清理未使用的日志导入,优化代码结构

Signed-off-by: longjin <longjin@DragonOS.org>
@github-actions github-actions bot added ambiguous The title of PR/issue doesn't match the format enhancement New feature or request labels Feb 7, 2026
- Introduced `FuseInitNegotiated` structure to manage negotiated parameters during FUSE initialization.
- Implemented `on_umount` method to handle unmounting, ensuring in-flight requests are properly failed and queued for destruction.
- Added `queue_forget` method to send FORGET messages for node lookups.
- Enhanced read request handling to enforce minimum buffer size requirements.
- Updated protocol definitions to include new FUSE opcodes and flags.
- Removed obsolete `fuse_test_simplefs.h` header file.

Signed-off-by: longjin <longjin@DragonOS.org>
- Added a detailed phased implementation plan for DragonOS FUSE, outlining key objectives and milestones from protocol enhancements to ecosystem compatibility.
- Introduced a demo application (`fuse3_demo`) based on `libfuse3`, including automatic library download and build processes.
- Implemented a test application (`test_fuse3_demo`) for regression testing of the FUSE functionality.
- Enhanced FUSE connection management with new opcodes and improved request handling.
- Updated protocol definitions to support additional FUSE operations and flags.

Signed-off-by: longjin <longjin@DragonOS.org>
- 将FUSE私有数据相关结构体移至独立模块
- 统一使用枚举类型FuseFilePrivateData表示所有FUSE文件类型
- 简化代码结构,提高可维护性

Signed-off-by: longjin <longjin@DragonOS.org>
- Introduced `FuseRequestCred` struct to encapsulate user credentials for FUSE requests.
- Refactored request building and handling methods to improve code clarity and reduce redundancy.
- Updated `FuseDevPrivateData` to provide a safer way to obtain a reference to `FuseConn`.
- Simplified connection reference retrieval in `LockedFuseDevInode` implementations.

Signed-off-by: longjin <longjin@DragonOS.org>
- Added non-blocking and blocking methods for popping pending requests in `FuseConn`.
- Introduced alignment for directory entry records in `FuseNode` to ensure proper memory alignment.
- Implemented methods for parsing directory entries in `FuseNode`, improving the handling of readdir and readdirplus payloads.
- Added a new script `run_all_test_fuse.sh` for executing and summarizing test results for FUSE applications.

Signed-off-by: longjin <longjin@DragonOS.org>
…sing

- Introduced a new `wait_with_recheck` function to streamline the waiting mechanism for requests in `FuseConn`, reducing code duplication.
- Refactored the `wait_complete`, `wait_initialized`, and `pop_pending_blocking` methods to utilize the new waiting function.
- Added utility methods in `FuseFS` for parsing optional integer and boolean values from strings, improving the clarity of mount option handling.

Signed-off-by: longjin <longjin@DragonOS.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ambiguous The title of PR/issue doesn't match the format enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant