diff options
author | Darrick J. Wong <djwong@kernel.org> | 2022-04-15 08:04:58 -0700 |
---|---|---|
committer | Eryu Guan <guaneryu@gmail.com> | 2022-04-17 22:38:45 +0800 |
commit | e75da9ebde722455544e7b4e261389d4b77c8a76 (patch) | |
tree | 56096d20fb77ff47505b4fe05c2f9778dc8e0f15 | |
parent | 82047ce7cd46e3a89eaddb6e43e8c10416409cd9 (diff) | |
download | xfstests-dev-e75da9ebde722455544e7b4e261389d4b77c8a76.tar.gz |
xfs/216: handle larger log sizes
mkfs will soon refuse to format a log smaller than 64MB, so update this
test to reflect the new log sizing calculations.
[Eryu: add xfs/216.cfg and use _link_out_file_name to choose .out file]
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Zorro Lang <zlang@redhat.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
-rwxr-xr-x | tests/xfs/216 | 19 | ||||
-rw-r--r-- | tests/xfs/216.cfg | 2 | ||||
-rw-r--r-- | tests/xfs/216.out.64mblog | 10 | ||||
-rw-r--r-- | tests/xfs/216.out.classic (renamed from tests/xfs/216.out) | 0 |
4 files changed, 31 insertions, 0 deletions
diff --git a/tests/xfs/216 b/tests/xfs/216 index c3697db764..f981151cef 100755 --- a/tests/xfs/216 +++ b/tests/xfs/216 @@ -29,6 +29,23 @@ $MKFS_XFS_PROG 2>&1 | grep -q rmapbt && \ $MKFS_XFS_PROG 2>&1 | grep -q reflink && \ loop_mkfs_opts="$loop_mkfs_opts -m reflink=0" +# Decide which golden output file we're using. Starting with mkfs.xfs 5.15, +# the default minimum log size was raised to 64MB for all cases, so we detect +# that by test-formatting with a 512M filesystem. This is a little handwavy, +# but it's the best we can do. +choose_golden_output() { + local seqfull=$1 + local file=$2 + + if $MKFS_XFS_PROG -f -b size=4096 -l version=2 \ + -d name=$file,size=512m $loop_mkfs_opts | \ + grep -q 'log.*blocks=16384'; then + _link_out_file_named $seqfull.out "64mblog" + else + _link_out_file_named $seqfull.out "classic" + fi +} + _do_mkfs() { for i in $*; do @@ -43,6 +60,8 @@ _do_mkfs() # make large holey file $XFS_IO_PROG -f -c "truncate 256g" $LOOP_DEV +choose_golden_output $0 $LOOP_DEV + #make loopback mount dir mkdir $LOOP_MNT diff --git a/tests/xfs/216.cfg b/tests/xfs/216.cfg new file mode 100644 index 0000000000..5b838c2d15 --- /dev/null +++ b/tests/xfs/216.cfg @@ -0,0 +1,2 @@ +64mblog: 64mblog +classic: classic diff --git a/tests/xfs/216.out.64mblog b/tests/xfs/216.out.64mblog new file mode 100644 index 0000000000..3c12085f32 --- /dev/null +++ b/tests/xfs/216.out.64mblog @@ -0,0 +1,10 @@ +QA output created by 216 +fssize=1g log =internal log bsize=4096 blocks=16384, version=2 +fssize=2g log =internal log bsize=4096 blocks=16384, version=2 +fssize=4g log =internal log bsize=4096 blocks=16384, version=2 +fssize=8g log =internal log bsize=4096 blocks=16384, version=2 +fssize=16g log =internal log bsize=4096 blocks=16384, version=2 +fssize=32g log =internal log bsize=4096 blocks=16384, version=2 +fssize=64g log =internal log bsize=4096 blocks=16384, version=2 +fssize=128g log =internal log bsize=4096 blocks=16384, version=2 +fssize=256g log =internal log bsize=4096 blocks=32768, version=2 diff --git a/tests/xfs/216.out b/tests/xfs/216.out.classic index cbd7b652d3..cbd7b652d3 100644 --- a/tests/xfs/216.out +++ b/tests/xfs/216.out.classic |