[PATCH 0/5] fstests: add some new LBS inspired tests

Luis Chamberlain
2024-06-11T03:02:07Z

While working on LBS we've come accross some existing issues, some of them deal
existing kernels without LBS, while the only new corner case specific to LBS is
the xarray bug Willy fixed to help with truncation to larger order folios and
races with writeback.

This adds 3 new test to help reproduce these issues right away. One test
reproduces an otherwise extremely difficult to reproduce deadlock, we have one
patch fix already merged to help with that deadlock, however the test also
also gives us more homework todo, as more deadlocks are still possible with that
test even on v6.10-rc2.

The mmap page boundary test let's us discover that a patch on the LBS series
fixes the mmap page boundary restriction when huge pages are enabled on tmpfs.
This is a corner case POSIX semantic issue, so likley not critical to most users.

The fsstress + compaction test reproduces a really difficult to reproduce hang
which is possible without some recent fixes, however the test reveals there is
yet more work is left to do.

The stress truncation + writeback test is the only test in this series specific
to LBS, but likely will be useful later for other future uses in the kernel.

Luis Chamberlain (5):
common: move mread() to generic helper _mread()
fstests: add mmap page boundary tests
fstests: add fsstress + compaction test
_require_debugfs(): simplify and fix for debian
fstests: add stress truncation + writeback test

common/rc | 54 +++++++++-
tests/generic/574 | 36 +------
tests/generic/749 | 238 ++++++++++++++++++++++++++++++++++++++++++
tests/generic/749.out | 2 +
tests/generic/750 | 62 +++++++++++
tests/generic/750.out | 2 +
tests/generic/751 | 127 ++++++++++++++++++++++
tests/generic/751.out | 2 +
8 files changed, 490 insertions(+), 33 deletions(-)
create mode 100755 tests/generic/749
create mode 100644 tests/generic/749.out
create mode 100755 tests/generic/750
create mode 100644 tests/generic/750.out
create mode 100755 tests/generic/751
create mode 100644 tests/generic/751.out

--
2.43.0