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

1.7 KiB

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.