Skip to content

Basic vdo tests#10

Open
raeburn wants to merge 2 commits into
device-mapper-utils:mainfrom
raeburn:basic-vdo-tests
Open

Basic vdo tests#10
raeburn wants to merge 2 commits into
device-mapper-utils:mainfrom
raeburn:basic-vdo-tests

Conversation

@raeburn

@raeburn raeburn commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

raeburn added 2 commits July 17, 2026 16:32
Add mounted_fs() for filesystem test setup with automatic cleanup,
and the SLAB_BITS_SMALL constant.

Assisted-by: Claude Opus 4.6 <claude-opus-4-6>
Converts Basic01.pm, BasicFSDedupe.pm, Create03.pm, and UDSTimeout01.pm to Python.

basic_fs_dedupe_tests.py (from BasicFSDedupe.pm):

- Disables lazy_itable_init on ext4 (via new fs.py enhancement) to prevent
  background metadata writes from skewing dedup stats
- Tolerance widened for statistics verification: 0.1/0.05 vs Perl's 0.01

uds_timeout_tests.py (from UDSTimeout01.pm):

- Perl uses configurable 100ms VDO timeout; Python relies on upstream
  dm_vdo's fixed 5000ms timeout exceeded by 6000ms dm-delay read delay
- Dataset size reduced: 10 x 20,000 blocks (200K total) vs Perl's
  10 x 150,000 (1.5M total)
- Two-phase approach: populate UDS index on fast storage first, then
  restart VDO on dm-delay device
- Uses dm-delay table-swap technique to avoid udev probe hang
- Disables delay after 60 seconds to let remaining I/O drain quickly

Infrastructure:

- fs.py: Added lazy_itable_init parameter for ext4 formatting

Assisted-by: Claude Opus 4.6 <claude-opus-4-6>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant