update
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
# repo-pre-2 Maintenance Baseline
|
||||
|
||||
## Snapshot Identity
|
||||
|
||||
`repo-pre-2` was created from the tracked `repo-pre-1` tree without copying
|
||||
working-tree-only files or build artifacts.
|
||||
|
||||
```text
|
||||
planning baseline commit: ed47f1b5583a229e372f488b9492d1f6234aae98
|
||||
snapshot creation parent: 109fe74d3fcef107db5869be1d030f4f12d1cfa6
|
||||
snapshot creation commit: 73fa57924b549387400eeeb85354bbbbe770a962
|
||||
repo-pre-1 source tree: 6a5a1a49d4a4e08f6ef1155de240500e63a15365
|
||||
repo-pre-2 snapshot tree: 6a5a1a49d4a4e08f6ef1155de240500e63a15365
|
||||
Linux comparison tree: b79b9a8b62f633e887a8b99075ff9412fabd7f83
|
||||
```
|
||||
|
||||
The matching source and snapshot tree IDs establish byte-for-byte content,
|
||||
file-mode, and path equivalence at snapshot creation. `repo-pre-1` and
|
||||
`src-linux` are read-only references for pre2 work.
|
||||
|
||||
## Phase Scope
|
||||
|
||||
Pre2 phase 1 is L0 mechanical maintenance alignment. It permits only the
|
||||
separately reviewed changes listed below:
|
||||
|
||||
1. Remove stale Linux-only declaration fragments from `src/xattr.h` while
|
||||
preserving every active FreeBSD interface.
|
||||
2. Remove six specified, unreferenced private constants from
|
||||
`src/erofs_defs.h`.
|
||||
3. Rename the private checksum helper in `src/super.c` without changing its
|
||||
signature, body, call position, or behavior.
|
||||
|
||||
Each source change must remain an independent commit. This phase does not add
|
||||
features, fix behavior, move responsibilities between files, reorder data
|
||||
structures, alter ABI, or broadly reformat code.
|
||||
|
||||
## Required FreeBSD Differences
|
||||
|
||||
Linux and FreeBSD EROFS remain independent implementations. The following
|
||||
platform boundaries are intentional and must not be replaced merely to make
|
||||
the source look more similar:
|
||||
|
||||
- FreeBSD VFS, vnode, mount, namecache, pager, and NFS export interfaces.
|
||||
- FreeBSD buffer/cache, GEOM provider, device I/O, locking, and allocation
|
||||
APIs.
|
||||
- FreeBSD xattr, ACL, errno, kernel-module, and `bsd.kmod.mk` conventions.
|
||||
- FreeBSD build gates, including the current amd64 restriction and optional
|
||||
`ZSTDIO` integration.
|
||||
|
||||
Linux naming and layout should be followed only when doing so preserves these
|
||||
native contracts and makes cross-repository review easier.
|
||||
|
||||
## Excluded Work
|
||||
|
||||
This phase does not address vnode ownership after `insmntque()` failure,
|
||||
large-run allocation and `uiomove()` limits, compact pblk validation, 48-bit
|
||||
boundaries, decompressor descriptors, backend ABI, typed errno, xattr parsing,
|
||||
ACL behavior, file splitting, build-system alignment, CI, or test tooling.
|
||||
|
||||
## Validation Status
|
||||
|
||||
Only static snapshot and Git allowlist checks were performed for the
|
||||
initialization commits. No build, QEMU run, test script, smoke test, mount, or
|
||||
runtime feature check was performed. All runtime capabilities therefore remain
|
||||
`NOT RUN` for repo-pre-2 until a later, explicitly authorized validation phase.
|
||||
Reference in New Issue
Block a user