Files
erofs-freebsd-out-tree/docs/pre11-batch-b.md
T
2026-08-18 09:20:44 +02:00

50 lines
1.7 KiB
Markdown

# Pre11 Batch B: Vnode Operation Scaffolding
## Scope
This batch is a behavior-preserving cleanup limited to vnode operation
scaffolding:
- removed the unused `EROFS_MOUNT_XATTR_USER` option bit;
- removed the zero-consumer `erofs_node.vnode` field and its only assignment;
- grouped VOP forward declarations and `erofs_vnodeops` initializers by
responsibility.
No function definitions, VOP registrations, lock or reclaim behavior,
`vnode_create_vobject()` error handling, or FIFO operations were changed.
## Consumer Audit
Before the edit, `EROFS_MOUNT_XATTR_USER` appeared only at its definition.
The `erofs_node.vnode` member appeared only in the structure definition and in
the single assignment performed by `erofs_vget()`; it had no read, address, ABI,
initializer, or offset consumer.
After the edit, both removed symbols have zero source-tree matches.
## VOP Vector Equivalence
Before reordering:
- `erofs_vnodeops`: 24 raw entries, 24 unique normalized `field=value` entries;
- `erofs_fifoops`: 14 raw entries, 14 unique normalized `field=value` entries.
After reordering:
- `erofs_vnodeops`: 24 raw entries, 24 unique entries, with the sorted
normalized set identical to the before snapshot;
- `erofs_fifoops`: 14 raw entries, 14 unique entries, with both the sorted set
and original entry sequence identical to the before snapshot.
## Validation
The batch uses static checks only:
- normalized before/after VOP vector set comparison;
- raw entry count versus unique entry count;
- removed-symbol zero-consumer search;
- changed-path whitelist;
- `git diff --check` and conflict-marker scan.
No build, QEMU smoke test, or feature test was run for this mechanical batch.