On Fri, Jun 14, 2024 at 01:44:30PM -0700, Darrick J. Wong wrote: > On Fri, Jun 14, 2024 at 07:27:59PM +0100, Theodore Ts'o wrote: > > On Thu, Jun 13, 2024 at 09:16:18PM -0700, Darrick J. Wong wrote: > > > > > > Amusingly enough, I still have that patch (and generic/1220) in my > > > fstests branch, and I haven't seen this problem happen on g/1220 in > > > quite a while. > > > > Remind me what your fstests git repo is again? > > https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfstests-dev.git/log/?h=djwong-wtf > > > The generic/750 test in my patch 2/2 that I sent out reproduces the > > problem super-reliably, so long as fsstress actually issues the > > io_uring reads and writes. So if you have your patch applied which > > suppresses io_uring from fstress by default, you might need to modify > > the patch series to force the io_uring, at which point it quite nicely > > demonstrates the fsstress ; umount problem. (It sometimes requires > > more rounds of fsstress ; umounts before it repro's on the xfs/4k, but > > it repro's really nicely on ext4/4k). > > Hm, your g/750 test mounts and unmounts in a loop, which might be why > mine hasn't tripped yet. I'll try applying it and report back. Have you had chance to try applying this? There has since been an upstream generic/750, so I've renumbered this to be generic/760 in my local. It's still failing on my latest kernel, although it does seem to be timing related. Using kvm-xfstests, the xfs/4k configuration wasn't failing if I enabled KASAN, but on my default install-kconfig kernel configuration, the now-renumbered generic/760 fails for both ext4/4k and xfs/4k (at least most of the time): [22:25:55]- output mismatch (see /results/xfs/results-4k/generic/760.out.bad) --- tests/generic/760.out 2024-07-11 10:44:31.000000000 -0400 +++ /results/xfs/results-4k/generic/760.out.bad 2024-07-11 22:25:55.031883734 -0400 @@ -1,2 +1,3 @@ QA output created by 760 -Silence is golden +umount: /vdc: target is busy. +failed to umount ... (Run 'diff -u /root/xfstests/tests/generic/760.out /results/xfs/results-4k/generic/760.out.bad' to see the entire diff) xfs/4k: 1 tests, 1 failures, 72 seconds generic/760 Failed 1s generic/760 Failed 3s generic/760 Pass 33s generic/760 Failed 3s generic/760 Pass 32s Totals: 5 tests, 0 skipped, 3 failures, 0 errors, 72s - Ted