[PATCH 0/3] fio-test: add filesystem tests
Luis Chamberlain <[email protected]> Wed, 19 Nov 2025 19:15:23 -0800
| Newsgroups | dev.linux.lists.kdevops |
|---|---|
| Message-ID | <[email protected]> |
Although fio is typically associated with testing block devices, it turns out you can nicely scale it to test filesystems too. Add support for this. Luis Chamberlain (3): fio-tests: add multi-filesystem testing support fio-tets: add DECLARE_HOSTS support fio-tests: add comprehensive filesystem testing documentation .github/workflows/fio-tests.yml | 98 ++ CLAUDE.md | 401 ++++++ PROMPTS.md | 344 +++++ defconfigs/fio-tests-fs-btrfs-zstd | 25 + defconfigs/fio-tests-fs-ext4-bigalloc | 24 + defconfigs/fio-tests-fs-ranges | 24 + defconfigs/fio-tests-fs-xfs | 74 ++ defconfigs/fio-tests-fs-xfs-4k-vs-16k | 57 + defconfigs/fio-tests-fs-xfs-all-blocksizes | 63 + defconfigs/fio-tests-fs-xfs-all-fsbs | 57 + defconfigs/fio-tests-fs-xfs-vs-ext4-vs-btrfs | 57 + defconfigs/fio-tests-quick | 74 ++ docs/fio-tests-fs.md | 1103 +++++++++++++++++ docs/fio-tests.md | 10 + kconfigs/workflows/Kconfig | 1 - playbooks/fio-tests-graph-host.yml | 76 ++ playbooks/fio-tests-graph.yml | 168 ++- playbooks/fio-tests-multi-fs-compare.yml | 140 +++ .../fio-tests/fio-multi-fs-compare.py | 434 +++++++ .../tasks/install-deps/debian/main.yml | 1 + .../tasks/install-deps/redhat/main.yml | 1 + .../tasks/install-deps/suse/main.yml | 1 + playbooks/roles/fio-tests/tasks/main.yaml | 430 +++++-- .../roles/fio-tests/templates/fio-job.ini.j2 | 31 +- playbooks/roles/gen_hosts/tasks/main.yml | 60 + .../templates/workflows/declared-hosts.j2 | 41 + .../templates/workflows/fio-tests.j2 | 66 + playbooks/roles/gen_nodes/tasks/main.yml | 100 +- workflows/fio-tests/Kconfig | 370 ++++-- workflows/fio-tests/Kconfig.btrfs | 87 ++ workflows/fio-tests/Kconfig.ext4 | 114 ++ workflows/fio-tests/Kconfig.fs | 75 ++ workflows/fio-tests/Kconfig.xfs | 170 +++ workflows/fio-tests/Makefile | 65 +- .../scripts/generate_comparison_graphs.py | 605 +++++++++ .../generate_comprehensive_analysis.py | 297 +++++ workflows/fio-tests/sections.conf | 47 + 37 files changed, 5504 insertions(+), 287 deletions(-) create mode 100644 .github/workflows/fio-tests.yml create mode 100644 defconfigs/fio-tests-fs-btrfs-zstd create mode 100644 defconfigs/fio-tests-fs-ext4-bigalloc create mode 100644 defconfigs/fio-tests-fs-ranges create mode 100644 defconfigs/fio-tests-fs-xfs create mode 100644 defconfigs/fio-tests-fs-xfs-4k-vs-16k create mode 100644 defconfigs/fio-tests-fs-xfs-all-blocksizes create mode 100644 defconfigs/fio-tests-fs-xfs-all-fsbs create mode 100644 defconfigs/fio-tests-fs-xfs-vs-ext4-vs-btrfs create mode 100644 defconfigs/fio-tests-quick create mode 100644 docs/fio-tests-fs.md create mode 100644 playbooks/fio-tests-graph-host.yml create mode 100644 playbooks/fio-tests-multi-fs-compare.yml create mode 100644 playbooks/python/workflows/fio-tests/fio-multi-fs-compare.py create mode 100644 workflows/fio-tests/Kconfig.btrfs create mode 100644 workflows/fio-tests/Kconfig.ext4 create mode 100644 workflows/fio-tests/Kconfig.fs create mode 100644 workflows/fio-tests/Kconfig.xfs create mode 100755 workflows/fio-tests/scripts/generate_comparison_graphs.py create mode 100644 workflows/fio-tests/scripts/generate_comprehensive_analysis.py create mode 100644 workflows/fio-tests/sections.conf -- 2.51.0