Skip to content

Improve storage_perf.py - #892

Open
crass wants to merge 6 commits into
QubesOS:mainfrom
crass:improve-storage-perf
Open

crass wants to merge 6 commits into
QubesOS:mainfrom
crass:improve-storage-perf

Conversation

@crass

@crass crass commented Sep 16, 2026

Copy link
Copy Markdown

This refactors storage_perf.py and add the --device option for testing a given block device, either in dom0 or in the VM. There is an optional --mount option to mount and do the test on the mount of the block device.

This is backwards compatible with the previous usage, so existing usages should see no change. The one except is in the creation of the name prefix where the '_' separator was replaced with ':' to improve parseability. I doubt anything has been parsing that though.

This makes the testname unambiguously parsable.

Signed-off-by: Glenn Washburn <development@efficientek.com>
Send the --filename= argument to fio instead of having the test file
be hardcoded in the fio config file. This removes the need to change
to the directory to be on the volume to be tested.

Signed-off-by: Glenn Washburn <development@efficientek.com>
@codecov

codecov Bot commented Sep 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 70.72%. Comparing base (747cff1) to head (0b59d65).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #892      +/-   ##
==========================================
- Coverage   70.75%   70.72%   -0.04%     
==========================================
  Files          61       61              
  Lines       14456    14456              
==========================================
- Hits        10229    10224       -5     
- Misses       4227     4232       +5     
Flag Coverage Δ
unittests 70.72% <ø> (-0.04%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@crass
crass force-pushed the improve-storage-perf branch from 3424d97 to 220f6fd Compare September 16, 2026 21:46
@marmarek

Copy link
Copy Markdown
Member

I doubt anything has been parsing that though.

There is a bot posting results on github:
https://github.com/QubesOS/openqa-tests-qubesos/blob/main/utils/github_reporting.py#L177
https://github.com/QubesOS/openqa-tests-qubesos/blob/main/utils/lib/openqa_api.py#L334

But looks like it should be okay with that separator change.

…lume

Create a subclass of TestRun to named TestRunVolume to handle test runs
specific to volumes.

Signed-off-by: Glenn Washburn <development@efficientek.com>
Create another subclass of TestRun, called TestRunDevice, and change
argument parsing to not take a --device argument, which is mutually
exclusive with --volume. It can also take a --mount option to have
the block device mounted and the performance testing some on that
mount.

Signed-off-by: Glenn Washburn <development@efficientek.com>
@crass
crass force-pushed the improve-storage-perf branch from 220f6fd to 0b59d65 Compare September 16, 2026 22:58
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.

2 participants