On Fri, Nov 01, 2024 at 03:35:52AM +0800, Zorro Lang wrote: > The xfs/157 doesn't need to do a "sized" mkfs, the image file is > 500MiB, don't need to do _scratch_mkfs_sized with a 500MiB fssize > argument, a general _scratch_mkfs is good enough. > > Besides that, if we do: > > MKFS_OPTIONS="-L oldlabel $MKFS_OPTIONS" _scratch_mkfs_sized $fs_size > > the _scratch_mkfs_sized trys to keep the $fs_size, when mkfs fails > with incompatible $MKFS_OPTIONS options, likes this: > > ** mkfs failed with extra mkfs options added to "-L oldlabel -m rmapbt=1" by test 157 ** > ** attempting to mkfs using only test 157 options: -d size=524288000 -b size=4096 ** > > But if we do: > > _scratch_mkfs -L oldlabel > > the _scratch_mkfs trys to keep the "-L oldlabel", when mkfs fails > with incompatible $MKFS_OPTIONS options, likes this: > > ** mkfs failed with extra mkfs options added to "-m rmapbt=1" by test 157 ** > ** attempting to mkfs using only test 157 options: -L oldlabel ** > > that's actually what we need. > > Signed-off-by: Zorro Lang <zlang@xxxxxxxxxx> > --- > > This test started to fail since 2f7e1b8a6f09 ("xfs/157,xfs/547,xfs/548: switch to > using _scratch_mkfs_sized") was merged. > > FSTYP -- xfs (non-debug) > PLATFORM -- Linux/x86_64 > MKFS_OPTIONS -- -f -m rmapbt=1 /dev/sda3 > MOUNT_OPTIONS -- -o context=system_u:object_r:root_t:s0 /dev/sda3 /mnt/scratch > > xfs/157 7s ... - output mismatch (see /root/git/xfstests/results//xfs/157.out.bad) > --- tests/xfs/157.out 2024-11-01 01:05:03.664543576 +0800 > +++ /root/git/xfstests/results//xfs/157.out.bad 2024-11-01 02:56:47.994007900 +0800 > @@ -6,10 +6,10 @@ > label = "oldlabel" > label = "newlabel" > S3: Check that setting with rtdev works > -label = "oldlabel" > +label = "" > label = "newlabel" > S4: Check that setting with rtdev + logdev works > ... > (Run 'diff -u /root/git/xfstests/tests/xfs/157.out /root/git/xfstests/results//xfs/157.out.bad' to see the entire diff) > Ran: xfs/157 > Failures: xfs/157 > Failed 1 of 1 tests > > Before that change, the _scratch_mkfs can drop "rmapbt=1" option from $MKFS_OPTIONS, > only keep the "-L label" option. That's why this test never failed before. > > Now it fails on xfs, if MKFS_OPTIONS contains "-m rmapbt=1", the reason as I > explained above. > > Thanks, > Zorro > > tests/xfs/157 | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/tests/xfs/157 b/tests/xfs/157 > index 9b5badbae..459c6de7c 100755 > --- a/tests/xfs/157 > +++ b/tests/xfs/157 > @@ -66,8 +66,7 @@ scenario() { > } > > check_label() { > - MKFS_OPTIONS="-L oldlabel $MKFS_OPTIONS" _scratch_mkfs_sized $fs_size \ > - >> $seqres.full > + _scratch_mkfs -L oldlabel >> $seqres.full 2>&1 Hans Holmberg discovered that this mkfs fails if the SCRATCH_RTDEV is very large and SCRATCH_DEV is set to the 500M fake_datafile because the rtbitmap is larger than the datadev. I wonder if there's a way to pass the -L argument through in the "attempting to mkfs using only" case? --D > _scratch_xfs_db -c label > _scratch_xfs_admin -L newlabel "$@" >> $seqres.full > _scratch_xfs_db -c label > -- > 2.45.2 > >