Skip to content

[r2cn] libfuse-fs POSIX 语义完备性与正确性提升至 98% #239

@genedna

Description

@genedna

[任务] 将 libfuse-fs 中的 overlayfspassthrough 的 POSIX 语义完备性与正确性提升至 98% 以上

[任务分值] 60 分

[背景描述] libfuse-fs 是 RK8S 项目中基于 FUSE 的用户态文件系统组件,当前已实现 overlayfspassthrough 两类文件系统后端。

然而在 POSIX 语义的完备性与一致性方面(例如 chmod, chown, utimens, link, symlink, rename 的原子性、权限与时间戳同步等)仍存在差距,部分场景未严格符合标准行为。
本任务旨在系统性地提升这两个后端的 POSIX 正确性,通过测试和实现补全,使其达到 98% 以上的语义一致性标准。

[需求描述]

  1. libfuse-fsoverlayfspassthrough 模块进行 POSIX 一致性测试;
  2. 修复或补齐以下系统调用的行为与语义:
    • chmod, chown, utimens, link, symlink, rename 等;
  3. 解决多层 overlay 与多用户访问场景下的权限与元数据继承问题;
  4. 使用 pjdfstestxfstests 进行验证,输出测试报告,报告需包含:
    • 当前支持与不支持的 POSIX 操作;
    • 改进点与修复策略;
    • 改进前后测试通过率(目标 ≥ 98%);
  5. 所有代码需编写充分的单元测试与集成测试。

[代码标准]

  1. 所有 PR 提交必须签署 Signed-off-by 和 使用 GPG 签名,即提交代码时(使用 git commit 命令时)至少使用 -s -S 两个参数,参考 Contributing Guide
  2. 所有 PR 提交必须通过 GitHub Actions 自动化测试,提交 PR 后请关注 GitHub Actions 结果;
  3. 代码注释均需要使用英文;

[PR 提交地址]
提交到 rk8s 仓库的 main 分支 project/libfuse-fs/ 目录;

[开发指导]

  1. 认领任务参考 r2cn 开源实习计划 - 任务认领与确认;

[导师及邮箱]
请申请此题目的同学使用邮件联系导师,或加入到 R2CN Discord 后在 #p-rk8s 频道和导师交流。

  1. Quanyi Ma [email protected]

[备注]

  1. 认领实习任务的同学,必须完成测试任务和注册流程,请参考:
    r2cn 开源实习计划 - 测试任务r2cn 开源实习计划 - 学生注册与审核

Metadata

Metadata

Assignees

Type

Projects

Status

No status

Relationships

None yet

Development

No branches or pull requests

Issue actions