update
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
# Test Case: Compact Special Inodes and Linux dev_t Decode
|
||||
|
||||
**Test ID**: TC022-compact-inode-special
|
||||
|
||||
## Objective
|
||||
|
||||
Verify compact char/block/FIFO inodes and Linux `new_decode_dev` conversion to
|
||||
FreeBSD `dev_t`.
|
||||
|
||||
## Fixture
|
||||
|
||||
Use `images/compact.erofs`. Source metadata records real nodes
|
||||
`char-large=2748:344865`, `block-large=2748:344865`, and `fifo`; structured
|
||||
evidence asserts compact inodes and raw on-disk `i_u.rdev=0x543abc21` for both
|
||||
devices. Compile `tests/stat_special.c` natively in FreeBSD.
|
||||
|
||||
## Procedure
|
||||
|
||||
```sh
|
||||
./stat_special char "$mnt/char-large" 2748 344865
|
||||
./stat_special block "$mnt/block-large" 2748 344865
|
||||
./stat_special fifo "$mnt/fifo"
|
||||
stat -f '%N mode=%p rdev=%r' "$mnt/char-large" "$mnt/block-large" "$mnt/fifo"
|
||||
```
|
||||
|
||||
## Expected Results
|
||||
|
||||
- Char and block helpers report major 2748, minor 344865, and raw FreeBSD
|
||||
`st_rdev=0xa430005bc21`.
|
||||
- FIFO type is correct and `st_rdev=NODEV`.
|
||||
- A raw little-endian cast would differ; all helper checks and cleanup pass.
|
||||
Reference in New Issue
Block a user