This commit is contained in:
2026-08-18 09:20:44 +02:00
commit b826cd721a
522 changed files with 93730 additions and 0 deletions
+44
View File
@@ -0,0 +1,44 @@
# Test Case: Cold Nested Namei and Corruption
**Test ID**: TC141-cold-nested-namei
**Category**: Directory Lookup
**Priority**: Critical
## Objective
Observe nested positive and missing lookup on fresh mounts, complete multi-
block cookies, Linux-compatible padding, and stable EINTEGRITY for three
structured directory corruptions.
## Procedure
On a fresh metadata/namei-base.erofs mount, make the first pathname operation:
./g3_vfs_probe expect-success open-read \
/tmp/repo22-g3/mnt/alpha/bravo/charlie/payload.txt
Compare the payload with the recorded source, require two direct missing
lookups to return errno 2, and run:
./readdir_probe /tmp/repo22-g3/mnt/wide 128
Repeat the cold positive read and cookie probe on
metadata/namei-padding-nonzero.erofs.
Finally mount each corruption independently and issue two direct stat calls:
| Image | Path | Expected errno |
|---|---|---:|
| namei-corrupt-short.erofs | /alpha | 97 |
| namei-corrupt-nameoff.erofs | /alpha | 97 |
| namei-corrupt-name.erofs | /wide/entry-077-abcdefghijklmnopqrstuvwxyz.txt | 97 |
Run readdir_probe on the affected directory and require its direct syscall
failure to report integrity failure. Unmount and detach between every image.
## Expected Results
Fresh positive lookup reads exact data; repeated missing lookup is ENOENT; both
valid variants report all 322 restartable entries. Every corruption remains
EINTEGRITY on both lookup attempts and readdir, without cache masking, panic,
or hang. Record all five image hashes and cleanup.