[PATCH 1/2] generic/269, generic/475: disable io_uring to prevent umount EBUSY flakes

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



There is an I/O uring bug which can hold on to file references after
the userspace program exits.  This is causing tests which run fsstress
and then try to unmount the file system to fail in a flaky fashion.
Since the point of these tests is not to test io_uring, and io_uring
has remained buggy since August 2023, let's fix the problem by
disabling io_uring in fsstress for these tests.

We can add a new test which specifically (and reliably) tests for this
io_uring bug.

See the link below for more details.

Link: https://lore.kernel.org/fstests/20230831151837.qexyqjgvrllqaz26@zlang-mailbox/
Signed-off-by: Theodore Ts'o <tytso@xxxxxxx>
---
 tests/generic/269 | 3 +++
 tests/generic/475 | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/tests/generic/269 b/tests/generic/269
index 29f453735..9be7ea9aa 100755
--- a/tests/generic/269
+++ b/tests/generic/269
@@ -13,6 +13,9 @@ _begin_fstest auto rw prealloc ioctl enospc stress
 . ./common/filter
 # Disable all sync operations to get higher load
 FSSTRESS_AVOID="$FSSTRESS_AVOID -ffsync=0 -fsync=0 -ffdatasync=0"
+# io_uring is buggy and causes "fsstress; umount" EBUSY test flakes
+FSSTRESS_AVOID="$FSSTRESS_AVOID -f uring_read=0 -f uring_write=0"
+
 _workout()
 {
 	echo ""
diff --git a/tests/generic/475 b/tests/generic/475
index abd6e89a1..3e9200771 100755
--- a/tests/generic/475
+++ b/tests/generic/475
@@ -45,6 +45,9 @@ _require_metadata_journaling $SCRATCH_DEV
 _dmerror_init
 _dmerror_mount
 
+# io_uring is buggy and causes "fsstress; umount" EBUSY test flakes
+FSSTRESS_AVOID="$FSSTRESS_AVOID -f uring_read=0 -f uring_write=0"
+
 while _soak_loop_running $((50 * TIME_FACTOR)); do
 	($FSSTRESS_PROG $FSSTRESS_AVOID -d $SCRATCH_MNT -n 999999 -p $((LOAD_FACTOR * 4)) >> $seqres.full &) \
 		> /dev/null 2>&1
-- 
2.43.0





[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux