mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
xfs/49[12]: skip pre-lazysbcount filesystems
Prior to lazysbcount, the xfs mount code blindly trusted the value of the fdblocks counter in the primary super, which means that the kernel doesn't detect the fuzzed fdblocks value at all. V4 is deprecated and pre-lazysbcount V4 hasn't been the default for ~14 years, so we'll just skip these two tests on those old filesystems. Signed-off-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Brian Foster <bfoster@redhat.com> Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
committed by
Eryu Guan
parent
d00cc974c7
commit
1c18b9ec2f
+12
@@ -1144,6 +1144,18 @@ _check_scratch_xfs_features()
|
||||
test "${found}" -eq "$#"
|
||||
}
|
||||
|
||||
# Skip a test if any of the given fs features aren't present on the scratch
|
||||
# filesystem. The scratch fs must have been formatted already.
|
||||
_require_scratch_xfs_features()
|
||||
{
|
||||
local features="$(_scratch_xfs_db -c 'version' 2>/dev/null)"
|
||||
|
||||
for feature in "$@"; do
|
||||
echo "${features}" | grep -q -w "${feature}" ||
|
||||
_notrun "Missing scratch feature: ${feature}"
|
||||
done
|
||||
}
|
||||
|
||||
# Decide if xfs_repair knows how to set (or clear) a filesystem feature.
|
||||
_require_xfs_repair_upgrade()
|
||||
{
|
||||
|
||||
@@ -36,6 +36,10 @@ _require_scratch
|
||||
|
||||
echo "Format and mount"
|
||||
_scratch_mkfs > $seqres.full 2>&1
|
||||
|
||||
# pre-lazysbcount filesystems blindly trust the primary sb fdblocks
|
||||
_require_scratch_xfs_features LAZYSBCOUNT
|
||||
|
||||
_scratch_mount >> $seqres.full 2>&1
|
||||
echo "test file" > $SCRATCH_MNT/testfile
|
||||
|
||||
|
||||
@@ -36,6 +36,10 @@ _require_scratch
|
||||
|
||||
echo "Format and mount"
|
||||
_scratch_mkfs > $seqres.full 2>&1
|
||||
|
||||
# pre-lazysbcount filesystems blindly trust the primary sb fdblocks
|
||||
_require_scratch_xfs_features LAZYSBCOUNT
|
||||
|
||||
_scratch_mount >> $seqres.full 2>&1
|
||||
echo "test file" > $SCRATCH_MNT/testfile
|
||||
|
||||
|
||||
Reference in New Issue
Block a user