DragonOS/docs/kernel/filesystem
LoGin 43263c1a11
feat(vfs): Implement mount propagation mechanism in VFS (#1410)
* feat(vfs): Implement mount propagation mechanism in VFS

- Added support for mount propagation types: Shared, Private, Slave, and Unbindable.
- Introduced a new module for managing mount propagation semantics, including peer group registration and event propagation.
- Updated existing mount functions to handle propagation logic during mount and unmount operations.
- Enhanced documentation to include details on the new mount propagation features and their usage.
- Added unit tests to verify the correctness of mount propagation behavior across different scenarios.

This implementation aligns with Linux semantics for mount propagation, ensuring compatibility and expected behavior in containerized environments.;

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

* refactor(filesystem): optimize mount propagation and logging

- Replace ID allocator with atomic counter for propagation groups
- Refactor peer group registry into structured class with better APIs
- Remove verbose debug logs to reduce noise

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

* fix(namespace): correct mount propagation peer group handling

- Fix peer group registration when changing propagation type from shared
- Ensure propagated mounts join source child's peer group instead of target
parent's group
- Add proper peer group cleanup when transitioning from shared propagation

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

* feat(vfs): implement recursive bind mount support

- Add recursive bind mount functionality with MS_BIND | MS_REC flags
- Implement BFS traversal for copying submounts in do_recursive_bind_mount
- Fix mount registration order to prevent dangling registrations on failure
- Add comprehensive test cases for recursive and non-recursive bind mounts

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

---------

Signed-off-by: longjin <longjin@DragonOS.org>
2025-11-27 01:07:16 +08:00
..
unionfs ospp project (feature) add namespace overlayfs cgroup (#949) 2024-10-31 00:50:34 +08:00
vfs feat(vfs): Implement mount propagation mechanism in VFS (#1410) 2025-11-27 01:07:16 +08:00
index.rst ospp project (feature) add namespace overlayfs cgroup (#949) 2024-10-31 00:50:34 +08:00
kernfs.md 增加kernfs (#386) 2023-09-19 19:46:59 +08:00
overview.md feat(syscall): 添加syscall table的实现 (#1164) 2025-05-13 18:59:18 +08:00
sysfs.md 根据sysfs完善设备驱动模型 & 添加sysfs官方文档 (#254) 2023-04-23 22:55:57 +08:00