From: Luis Chamberlain <mcgrof@kernel.org>
To: patches@lists.linux.dev, fstests@vger.kernel.org
Cc: linux-xfs@vger.kernel.org, linux-mm@kvack.org,
linux-fsdevel@vger.kernel.org, akpm@linux-foundation.org,
ziy@nvidia.com, vbabka@suse.cz, seanjc@google.com,
willy@infradead.org, david@redhat.com, hughd@google.com,
linmiaohe@huawei.com, muchun.song@linux.dev, osalvador@suse.de,
p.raghav@samsung.com, da.gomez@samsung.com, hare@suse.de,
john.g.garry@oracle.com, mcgrof@kernel.org
Subject: [PATCH v2 0/5] fstests: add some new LBS inspired tests
Date: Fri, 14 Jun 2024 17:29:29 -0700 [thread overview]
Message-ID: <20240615002935.1033031-1-mcgrof@kernel.org> (raw)
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 tests 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 3 tests are:
1) mmap():
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
with a 4k base page size system (x86). This is a corner case POSIX semantic
issue, so likley not critical to most users.
2) fsstress + compaction
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 to fix all posssible deadlocks. To be clear these
issues are reproducible without LBS, on a plain 4k block size XFS filesystem.
3) stress truncation + writeback
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.
Changes on this v2:
- Few cleanups suggested
- Renamed routines as suggested
- Used helpers for proc vmstat as suggested
- Made the mmap() test continue so we can just count the number of failures
of the test
- Made the fio test ignore out of space issues, we care to just blast
the page cache, and detect write errors or crashes. This test now goes also
tested with tmpfs.
- Minor commit log enhancements
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 | 256 ++++++++++++++++++++++++++++++++++++++++++
tests/generic/749.out | 2 +
tests/generic/750 | 63 +++++++++++
tests/generic/750.out | 2 +
tests/generic/751 | 170 ++++++++++++++++++++++++++++
tests/generic/751.out | 2 +
8 files changed, 552 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
next reply other threads:[~2024-06-15 0:29 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-15 0:29 Luis Chamberlain [this message]
2024-06-15 0:29 ` [PATCH v2 1/5] common: move mread() to generic helper _mread() Luis Chamberlain
2024-06-15 0:29 ` [PATCH v2 2/5] fstests: add mmap page boundary tests Luis Chamberlain
2024-06-18 14:07 ` Zorro Lang
2024-06-15 0:29 ` [PATCH v2 3/5] fstests: add fsstress + compaction test Luis Chamberlain
2024-06-15 0:29 ` [PATCH v2 4/5] _require_debugfs(): simplify and fix for debian Luis Chamberlain
2024-06-15 0:29 ` [PATCH v2 5/5] fstests: add stress truncation + writeback test Luis Chamberlain
2024-06-18 14:10 ` Zorro Lang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240615002935.1033031-1-mcgrof@kernel.org \
--to=mcgrof@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=da.gomez@samsung.com \
--cc=david@redhat.com \
--cc=fstests@vger.kernel.org \
--cc=hare@suse.de \
--cc=hughd@google.com \
--cc=john.g.garry@oracle.com \
--cc=linmiaohe@huawei.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-xfs@vger.kernel.org \
--cc=muchun.song@linux.dev \
--cc=osalvador@suse.de \
--cc=p.raghav@samsung.com \
--cc=patches@lists.linux.dev \
--cc=seanjc@google.com \
--cc=vbabka@suse.cz \
--cc=willy@infradead.org \
--cc=ziy@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).