Message ID | 20240122111751.449762-2-kernel@pankajraghav.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | fstest changes for LBS | expand |
On Mon, Jan 22, 2024 at 12:17:50PM +0100, Pankaj Raghav (Samsung) wrote: > From: Pankaj Raghav <p.raghav@samsung.com> > > 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? --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@pankajraghav.com/ > > Signed-off-by: Pankaj Raghav <p.raghav@samsung.com> > --- > 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 >
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@samsung.com> >> >> 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. > > --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@pankajraghav.com/ >> >> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com> >> --- >> 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 >>
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@samsung.com> > >> > >> 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@kernel.org> 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@kernel.org> --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@pankajraghav.com/ > >> > >> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com> > >> --- > >> 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 > >> >
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