Skip to content

actiondfs: support hard links, IPC nodes and large files - #60

Draft
fionera wants to merge 1 commit into
hermeticbuild:mainfrom
fionera:fionera/actiondfs-file-compat
Draft

fionera wants to merge 1 commit into
hermeticbuild:mainfrom
fionera:fionera/actiondfs-file-compat

Conversation

@fionera

@fionera fionera commented Nov 2, 2026

Copy link
Copy Markdown

Ordinary build tools need writable hard links, pathname Unix sockets, and disk-image I/O beyond 2 GiB. actiondfs currently rejects these operations or opens backing files without O_LARGEFILE.

Add staged hard links with shared inode identity and correct link counts across unlink/rename, allow staged FIFOs and Unix sockets while continuing to reject device nodes, and set O_LARGEFILE on both CAS and staged backing opens. Immutable CAS inputs cannot acquire writable hard-link aliases.

Extend the existing filesystem exerciser with shared-write/link-count checks, Unix socket bind/listen/connect/accept and directory iteration, immutable-input hard-link rejection, and reopening/reading/writing a sparse 5 GiB image. The sparse file is removed before output upload. The native probe failed on the old large-file path and passed with these changes.

Validation was performed with these fixes combined in a Linux KVM integration workspace, using actiond for execution and caching. The native unit suite, filesystem probes, and a large mixed-language Bazel workload passed. These draft changes have not been validated with tools/e2e.sh vm on macOS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant