On Mon, Jan 22, 2024 at 06:23:16PM +0100, Pankaj Raghav wrote: > On 22/01/2024 17:53, Darrick J. Wong wrote: > > On Mon, Jan 22, 2024 at 12:17:50PM +0100, Pankaj Raghav (Samsung) wrote: > >> From: Pankaj Raghav <p.raghav@xxxxxxxxxxx> > >> > >> This test fails for >= 64k filesystem block size on a 4k PAGE_SIZE > >> system(see LBS efforts[1]). Scale the `blksz` based on the filesystem > > > Fails how, specifically? > > I basically get this in 558.out.bad when I set filesystem block size to be 64k: > QA output created by 558 > Expected to hear about writeback iomap invalidations? > Silence is golden > > But I do see that iomap invalidations are happening for 16k and 32k, which makes it pass > the test for those block sizes. > > My suspicion was that we don't see any invalidations because of the blksz fixed > at 64k in the test, which will contain one FSB in the case of 64k block size. > > Let me know if I am missing something. Nope, that sounds good and fixes the problems I saw. So: Tested-by: Darrick J. Wong <djwong@xxxxxxxxxx> And if you add to the commit message that this test specifically fixes the "Expected to hear about writeback iomap invalidations?" message for 64k filesystems, then: Reviewed-by: Darrick J. Wong <djwong@xxxxxxxxxx> --D > > > > --D > > > >> block size instead of fixing it as 64k so that we do get some iomap > >> invalidations while doing concurrent writes. > >> > >> Cap the blksz to be at least 64k to retain the same behaviour as before > >> for smaller filesystem blocksizes. > >> > >> [1] LBS effort: https://lore.kernel.org/lkml/20230915183848.1018717-1-kernel@xxxxxxxxxxxxxxxx/ > >> > >> Signed-off-by: Pankaj Raghav <p.raghav@xxxxxxxxxxx> > >> --- > >> tests/xfs/558 | 7 ++++++- > >> 1 file changed, 6 insertions(+), 1 deletion(-) > >> > >> diff --git a/tests/xfs/558 b/tests/xfs/558 > >> index 9e9b3be8..270f458c 100755 > >> --- a/tests/xfs/558 > >> +++ b/tests/xfs/558 > >> @@ -127,7 +127,12 @@ _scratch_mount >> $seqres.full > >> $XFS_IO_PROG -c 'chattr -x' $SCRATCH_MNT &> $seqres.full > >> _require_pagecache_access $SCRATCH_MNT > >> > >> -blksz=65536 > >> +min_blksz=65536 > >> +file_blksz=$(_get_file_block_size "$SCRATCH_MNT") > >> +blksz=$(( 8 * $file_blksz )) > >> + > >> +blksz=$(( blksz > min_blksz ? blksz : min_blksz )) > >> + > >> _require_congruent_file_oplen $SCRATCH_MNT $blksz > >> > >> # Make sure we have sufficient extent size to create speculative CoW > >> -- > >> 2.43.0 > >> >