On 22/01/2024 17:57, Darrick J. Wong wrote: > On Mon, Jan 22, 2024 at 12:17:51PM +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]). Adapt the blksz so that we create more than >> one block for the testcase. > And, uh, what block sizes > 64k were tested? I thought I removed >= 64k and put just 64k before I sent the patches as we don't allow FSB > 64k, for now. Hypothetically, due to the hardcoded 64k blksz, we might face the same issue for > 64k FSB as well. > How does this fail, specifically? This is the output I get when I set the block size to be 64k: QA output created by 161 Expected timer expiry (0) to be after now (1705944360). Running xfs_repair to upgrade filesystem. Adding large timestamp support to filesystem. FEATURES: BIGTIME:YES Expected uid 1 expiry (0) to be after now (1705944361). Expected uid 2 expiry (0) to be after uid 1 (0). Expected uid 2 expiry (0) to be after 2038. Expected uid 1 expiry (0) to be after now (1705944361). Expected uid 2 expiry (0) to be after uid 1 (0). Expected uid 2 expiry (0) to be after 2038. grace2 expiry has value of 0 grace2 expiry is NOT in range 7956915737 .. 7956915747 grace2 expiry after remount has value of 0 grace2 expiry after remount is NOT in range 7956915737 .. 7956915747 Seeing the comment: Force the block counters for uid 1 and 2 above zero, I added the changes which fixed the issues for 64k FSB. > --D > >> 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/161 | 9 +++++++-- >> 1 file changed, 7 insertions(+), 2 deletions(-) >> >> diff --git a/tests/xfs/161 b/tests/xfs/161 >> index 486fa6ca..f7b03f0e 100755 >> --- a/tests/xfs/161 >> +++ b/tests/xfs/161 >> @@ -38,9 +38,14 @@ _qmount_option "usrquota" >> _scratch_xfs_db -c 'version' -c 'sb 0' -c 'p' >> $seqres.full >> _scratch_mount >> $seqres.full >> >> +min_blksz=65536 >> +file_blksz=$(_get_file_block_size "$SCRATCH_MNT") >> +blksz=$(( 2 * $file_blksz)) >> + >> +blksz=$(( blksz > min_blksz ? blksz : min_blksz )) >> # Force the block counters for uid 1 and 2 above zero >> -_pwrite_byte 0x61 0 64k $SCRATCH_MNT/a >> $seqres.full >> -_pwrite_byte 0x61 0 64k $SCRATCH_MNT/b >> $seqres.full >> +_pwrite_byte 0x61 0 $blksz $SCRATCH_MNT/a >> $seqres.full >> +_pwrite_byte 0x61 0 $blksz $SCRATCH_MNT/b >> $seqres.full >> sync >> chown 1 $SCRATCH_MNT/a >> chown 2 $SCRATCH_MNT/b >> -- >> 2.43.0 >> >>